Remote Roots
Remote Roots
.cnosrc.yml can point at either a local .cnos directory or a remote git-backed root.
Local:
root: ./.cnosRemote:
root: git+https://github.com/org/config.git#v2.1.0workspace: travelRemote roots are resolved into the CNOS cache, then loaded exactly like a local manifest root.
Supported URIs
Recommended production form:
root: git+https://github.com/org/config.git#v2.1.0Private repo over SSH:
root: git+ssh://git@github.com/org/private-config.git#mainSubpath inside the repo:
root: git+https://github.com/org/monorepo.git#v2.1.0:config/.cnosCache Behavior
- semantic-version tags and commit SHAs are treated as immutable
- branch refs are treated as mutable
- runtime reads use a cache TTL
cnos buildrefreshes mutable refs before building artifactscnos cache refreshforces a re-fetch when needed
Inspect the cache:
cnos cache listOverride TTL for one command when needed:
cnos read value.app.name --cache-ttl 0cnos watch --cache-ttl 15 -- node server.jsRead-Only Model
Remote roots are consumed as read-only config.
These work:
cnos read value.app.namecnos build env --to .env.stagecnos run -- node server.jsThese are blocked:
cnos value set app.name democnos promote value.app.name --to publiccnos vault create defaultThe right workflow is to edit the source config repo and then let consumers refresh the cached root.