| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Declarative repository context and skills for agents on your local or cloud machines. Site: https://envit.dev
envit.json
{
"repos": [
"sqlite/sqlite",
"PostHog/posthog-js",
"getsentry/sentry-javascript",
"earendil-works/pi",
"pierrecomputer/pierre",
"cloudflare/cloudflare-os"
],
"skills": {
"mattpocock/skills": ["grill-me", "grilling"],
"emilkowalski/skills": "*",
"dmmulroy/anti-slop": "*",
"backnotprop/bro": "bro",
"obra/superpowers": "*",
"remotion-dev/skills": { "pick": "*", "modelInvocable": false },
"cursor/plugins": { "path": "pstack", "pick": ["interrogate", "blast-radius"] }
}
}External repos that your agents can use as context, and skills that they load. One command materializes both:
$ envit sync fetched sqlite 1b3f6d2a94c0 3184 files · 94.2 MB fetched posthog-js 9c41d2e807aa 2311 files · 18.7 MB ... skill grill-me e1f0a9b62c44 (mattpocock/skills) ✓ synced 5 repo(s) · 45 skill(s) · 151.4 MB added to store $ envit sync ✓ synced 5 repo(s) · store unchanged # 9 ms
curl -fsSL https://envit.dev/install.sh | shAlso: brew install plannotator/tap/envit, cargo install envit, npm install -g envit. Windows: use WSL for now. Or build from source:
cargo build --release # target/release/envit| scope | |
|---|---|
| envit init | This project. Writes envit.json. Commit it: teammates, CI, and cloud agents reproduce the same context. |
| envit init -g | This machine. Writes ~/.envit/envit.json. Skills land in ~/.agents/skills/ and ~/.claude/skills/, for every project. |
| envit sync | Materializes both scopes. |
Skills land in .agents/skills/ and .claude/skills/, where agents already look. Repo source lands in .envit/repos/<name>/, read-only, at a pinned commit. envit stores each repo once per machine, in ~/.envit/store/; every project links to that one copy, so nothing is duplicated on your disk. Each sync generates .envit/AGENTS.md (with a CLAUDE.md symlink) that lists every repo, its commit, and its path. If the project root has an AGENTS.md or CLAUDE.md, sync appends a short fenced note that points there.
envit is not a skill registry or installer. It is a declared environment. Find skills wherever you like, then declare the ones a project keeps in envit.json. Skills installed by hand or with another tool stay where they are. envit only manages what its file declares.
| command | |
|---|---|
| envit sync | resolve, fetch, check out, link, lock. Refreshes branch-tracking repos at most once per 24 h. |
| envit sync --frozen | lockfile only. Errors on drift. For CI and sandboxes. |
| envit sync --offline | no network. Links what the store has. |
| envit add <source> | owner/repo, gitlab:…, or any https git URL. --ref for branch, tag, or sha. |
| envit update [name] | move branch-tracking repos and skill sources to current remote heads. |
| envit pin <name> | freeze at the locked commit. unpin resumes tracking. |
| envit status | ref, commit, link health, staleness. Never touches the network. |
| envit skills | declared skills, both scopes. |
| envit gc | delete checkouts no project references. --dry-run first. |
Per-skill invocation control: { "name": "grill-me", "modelInvocable": false } in a pick list rewrites both Claude's disable-model-invocation and Codex's allow_implicit_invocation, regardless of what the author set.
What envit contacts, what it writes, and how releases are verified: https://envit.dev/security. Report vulnerabilities privately through GitHub.
skills/envit/ is an Agent Skill that teaches an agent how to use envit. Install it into a project or globally:
npx skills add plannotator/envitMIT OR Apache-2.0. The envit CLI and core library are open source. Hosted platform services built around envit may not be.
| Back | FazBrowse Home | New Git URL |