assetbundle – How to create closed source Unity bundle

I want to create an asset/bundle that I can drop into projects to get up and running easily. Ideally this bundle would be closed-source so that the code is not accessible, but yet still usable. Is there a way to do this with Unity, or does the way packages work simply mean bundles will always be accessible/browsable for the source code?

I am planning on doing this for a simple 1st person controller, so that I can easily drop it into demo scenes of assets I purchase, to get a quick feel for using them. If possible, I would also distribute this as an asset (likely free, maybe minimal cost). Is there anyway to keep it closed-source, or is this simply not possible?