Bootstrap CLI that hoists the shared agentic-system surface into consumer repos.
Project description
agentic-bootstrap
Pip-installable CLI that hoists the shared agentic-system surface
(typed protocol, two MCP servers, hooks, skills, generated agent
workflows) into consumer repositories. Lives inside
darce/agentic-protocol-monorepo.
Consumers run agentic-bootstrap install --target <path> once; it
clones the monorepo, materializes the overlay, and registers both
managed MCP servers (mcp-agent-handoff, mcp-agent-orchestrator)
across .mcp.json, .vscode/mcp.json, and .codex/config.toml. No
hand-edits required.
Install
From PyPI (recommended)
uvx --from agentic-bootstrap agentic-bootstrap install --target /path/to/your/repo
# or, persistent:
uv tool install agentic-bootstrap
From the monorepo source tree (development)
cd packages/agentic-bootstrap
python -m pip install -e ".[dev]"
Direct from git (private-repo phase, before PyPI release)
One-shot (no install — fetches each invocation):
uvx --from "git+ssh://git@github.com/darce/agentic-protocol-monorepo@agentic-bootstrap-v0.2.1#subdirectory=packages/agentic-bootstrap" \
agentic-bootstrap install \
--target /path/to/your/repo
Persistent (recommended once you start running status / doctor
regularly — installs agentic-bootstrap onto $PATH):
uv tool install "git+ssh://git@github.com/darce/agentic-protocol-monorepo@agentic-bootstrap-v0.2.1#subdirectory=packages/agentic-bootstrap"
# then:
agentic-bootstrap status --target /path/to/your/repo
agentic-bootstrap doctor --target /path/to/your/repo
# upgrade later:
uv tool upgrade agentic-bootstrap
Hardlink warning on first install? If you see
Failed to hardlink files; falling back to full copy, youruvcache and tool dir live on different filesystems. The install still succeeds; silence the warning withexport UV_LINK_MODE=copyin your shell profile.
Subcommands
agentic-bootstrap install --target <path> [--remote-ref <tag>] [--mcp-servers <default|path>] [--no-mcp-servers]
agentic-bootstrap update --target <path> --remote-ref <tag>
agentic-bootstrap status --target <path>
agentic-bootstrap doctor --target <path> [--mcp-servers <default|path>]
agentic-bootstrap repair --target <path> [--force-dirty] [--mcp-servers <default|path>]
install: Clone the monorepo, materialize SHARED + GENERATED surfaces, write the three MCP-config files, runinit-stateto provision<target>/.task-state/handoff.db(skipped under--no-mcp-servers), setcore.hooksPath, and write the overlay manifest.update: Re-run install at a new--remote-ref; refresh GENERATED surfaces and, optionally, configs.status: Print a summary of the installed overlay manifest. When the install registered MCP servers, also reports the resolvedstate_dir/db_path/exports_dir/schema_versionviainit-state --check.doctor: Detect drift in SHARED, GENERATED, config, and initialized-state surfaces. Flags missing.task-state/handoff.dbasstate_driftonly when the manifest recorded.mcp.json. Exit1when drift exists.repair: Restore drifted surfaces flagged bydoctor.
See docs/CONSUMER.md
for the consumer-facing walkthrough (upgrade, drift handling, skill
overrides, the current_task_auto_regen migration note).
Surfaces written by install
The canonical source of truth for bootstrap-managed surfaces is the
installer implementation in
src/agentic_bootstrap/install.py (SHARED_SURFACES and
GENERATED_SURFACES). Keep this table aligned with those constants.
| Surface | Source | Layer |
|---|---|---|
scripts/hooks/ |
shared | symlink |
.github/hooks/ |
shared | symlink |
docs/agentic/contracts/ |
shared | symlink |
.claude/skills/ |
generated | real dir |
.claude/commands/ |
generated | real dir |
.github/prompts/ |
generated | real dir |
.codex/skills/ |
generated | real dir |
.mcp.json |
generated | real file |
.vscode/mcp.json |
generated | real file |
.codex/config.toml |
generated | real file |
core.hooksPath git config |
generated | git config |
.task-state/handoff.db |
runtime | sqlite |
.task-state/exports/ |
runtime | dir |
.agentic/remote/ |
bootstrap | git clone |
.agentic-bootstrap.json |
bootstrap | manifest |
.task-state/ is provisioned by the handoff server's init-state
subcommand at install time and is gitignored — each fresh checkout
regenerates it through agentic-bootstrap install.
Defaults
--remote-urldefaults togit@github.com:darce/agentic-protocol-monorepo.git.--remote-refdefaults tomain(override with a release tag likev0.1.0).--mcp-serversdefaults to the built-in managed map registeringmcp-agent-handoffandmcp-agent-orchestratorviauvxwith--workspace-root . serve-stdio, so Codex, VS Code, and Claude clients start real MCP stdio servers from the generated config. Pass a JSON file path to override; pass--no-mcp-serversto skip the three config writers entirely.
Development
Tests live under tests/. From the monorepo root:
cd packages/agentic-bootstrap
PYTHONPATH=.:src:../agentic-protocol/src pytest tests -q
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file agentic_bootstrap-0.3.1.tar.gz.
File metadata
- Download URL: agentic_bootstrap-0.3.1.tar.gz
- Upload date:
- Size: 52.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
61af72f0332047c43565fafffb4d86b02de4e3ea52a26630e6a236be6f527cb0
|
|
| MD5 |
d40127225c59abc0710f72b7a09d0ddd
|
|
| BLAKE2b-256 |
5116a71104b7434df6079fcb6d9d7174192b602dff68c8de4f3eb0b24bcfdd5b
|
File details
Details for the file agentic_bootstrap-0.3.1-py3-none-any.whl.
File metadata
- Download URL: agentic_bootstrap-0.3.1-py3-none-any.whl
- Upload date:
- Size: 21.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
28f9a82714a4049adf36a231ae9769d6dcc94f611990efc302a68dc0aa9408b9
|
|
| MD5 |
de560206f8b86057a621562fd7e1a9ee
|
|
| BLAKE2b-256 |
13c881c700653f7682b7e281c487a803568fbe232ae605b9d1fe44979ecc3fe6
|