Install and Bootstrap
Deploy the IAS scaffold into any Git repository -- choose a profile, run the bootstrap command, and understand what gets created.
Install and Bootstrap
Deploying IAS into a repository is called bootstrapping. The bootstrap process adds the IAS scaffold -- documentation structure, agent configs, CLI tooling, and optionally the hybrid runner -- to your target repository. After bootstrap, agents can operate on the repo with full context and tooling.
Quick start
The fastest way to deploy IAS is with the guided install command:
ias install /path/to/repoThis interactive flow walks you through profile selection, handles Git operations (branch creation, commit, push), and can optionally open a pull request for team review.
What bootstrap does
Bootstrap copies a structured set of files into your repository that enable IAS to operate:
- Documentation scaffold -- The
docs/ias/directory with templates for project context, decisions, runs, and knowledge gaps. - Agent configuration --
AGENTS.md,CLAUDE.md, and tool-specific config directories (.claude/,.codex/skills/) that teach AI agents how to work in your repo. - Local CLI -- The
scripts/iashelper for preflight checks, creating runs, and other local operations. - Hybrid runner (optional) -- The
scripts/ias-runner/automated execution engine for work tasks and PR reviews.
The scope of what gets installed depends on the profile you choose.
Bootstrap profiles
Choose a profile based on how you plan to run agents:
| Profile | What it includes | Best for |
|---|---|---|
terminal | Docs scaffold, agent configs, local CLI | Interactive terminal agents only (Claude Code, Codex CLI) |
hybrid | Everything in terminal + automated runner | Automated execution (overnight runs, batch work) |
control-plane | Docs scaffold, agent configs, Console integration | Teams using the IAS Console for coordination |
full | Everything (CLI + runner + Console integration) | Teams that want all capabilities available |
- The default profile for
ias install(interactive) iscontrol-plane. - The default profile for
ias bootstrap(non-interactive) isterminal.
The bootstrap command
Interactive install (recommended)
ias install /path/to/repoThe interactive installer prompts you for:
- Profile selection
- Whether to create a branch, commit, push, and open a PR
- Whether to stash uncommitted changes (if any)
Non-interactive bootstrap
For scripted or CI deployments, use the bootstrap command directly with explicit flags:
ias bootstrap /path/to/repo --profile control-planeCommon options
| Flag | Default | Description |
|---|---|---|
--profile <name> | terminal (bootstrap) / control-plane (install) | Which profile to deploy |
--commit | false | Create a Git commit with the scaffold |
--push | false | Push the commit to the remote |
--pr | false | Open a pull request after pushing |
--pr-base <branch> | main | Target branch for the pull request |
--branch <name> | ias/bootstrap | Branch name for the bootstrap commit |
--force | false | Update framework files in a repo that already has IAS |
--local-only | false | Keep framework files out of Git history |
Example with all Git operations enabled:
ias install /path/to/repo --commit true --push true --pr true --pr-base mainWhat gets created
After bootstrap, your repository will contain the following structure (paths vary by profile):
Documentation scaffold (docs/ias/)
| Path | Purpose |
|---|---|
docs/ias/project-context.md | Project metadata: production status, tech stack, constraints, stakeholders, success criteria |
docs/ias/gaps.md | Tracked knowledge gaps and open questions |
docs/ias/context/ | Human-curated context: base goal, inputs, references |
docs/ias/decisions/ | Auditable decision records from agent and human decisions |
docs/ias/runs/ | Goal-scoped execution artifacts (one directory per run) |
docs/ias/process/ | Agent operating procedures and policies |
docs/ias/templates/ | Reusable templates for plans, reviews, and intakes |
docs/ias/policy/ | Git and execution policy configuration |
Agent configuration
| Path | Purpose |
|---|---|
AGENTS.md | Top-level agent operating protocol |
CLAUDE.md | Claude-specific operating notes and conventions |
.claude/ | Claude Code skills, commands, and settings |
.codex/skills/ | Codex CLI role-based skills |
Tooling
| Path | Purpose |
|---|---|
scripts/ias | Local helper CLI for preflight, new runs, and checks |
scripts/ias-runner/ | Hybrid runner for automated execution (hybrid and full profiles only) |
Git integration
Bootstrap is designed to work cleanly with your existing Git workflow:
- IAS stages and commits only IAS-owned paths. It does not run
git add -Aon your entire repo. - If the target repo has uncommitted tracked changes, the installer will offer to stash them (interactive mode) or fail with a clear error (non-interactive mode).
- The default branch name for the bootstrap commit is
ias/bootstrap. Customize it with--branch <name>. - You can customize the PR base branch with
--pr-base <branch>.
Console-driven bootstrap
You can also trigger bootstrap from the Console UI:
- Open the repo in Repositories.
- Click Bootstrap IAS.
- A local agent will create the scaffold and optionally open a PR.
- If PR-based, merge the PR and use the Verify install action to confirm IAS is present on the default branch.
The Console needs to verify that the bootstrap exists on the repo's default branch before it can run Build Context or Context Architect jobs.
Force mode (upgrading)
If IAS is already installed in the repository, run bootstrap again with --force to update framework files:
ias install /path/to/repo --forceForce mode preserves your project-specific artifacts -- it only overwrites generic framework files:
| Preserved (not overwritten) | Updated (overwritten) |
|---|---|
docs/ias/project-context.md | docs/ias/process/ |
docs/ias/gaps.md | docs/ias/templates/ |
docs/ias/context/ | AGENTS.md, CLAUDE.md |
docs/ias/decisions/ | .claude/, .codex/skills/ |
docs/ias/runs/ | scripts/ias, scripts/ias-runner/ |
docs/ias/design/ |
This makes --force safe for upgrading IAS in a repository that already has project context populated.
Local-only mode
For sensitive or client codebases where IAS framework files should not appear in Git history:
ias install /path/to/repo --local-onlyLocal-only mode appends .gitignore rules that separate framework files from project artifacts:
| Kept out of Git (framework) | Committed to Git (artifacts) |
|---|---|
scripts/ias, scripts/ias-runner/ | docs/ias/project-context.md |
.claude/, .codex/skills/ | docs/ias/gaps.md |
docs/ias/process/, docs/ias/templates/ | docs/ias/context/ |
AGENTS.md, CLAUDE.md | docs/ias/decisions/, docs/ias/runs/ |
This means:
- Each developer on the team must bootstrap locally to get the runtime files.
- Project decisions, context, and run history are shared through Git as usual.
- Your agent framework IP does not land in the client's Git history.
The hybrid runner stores operational telemetry under docs/ias/runs/<run>/runner/ (prompts, event logs, job artifacts). In local-only mode, this telemetry is gitignored by default. You can opt in to tracking it if needed.
After bootstrap
Once IAS is deployed, the next step is to populate your project context so agents understand your codebase.
Via the Console (recommended)
- Link the repo:
ias repo link /path/to/repo - Start the agent:
ias agent start - In the Console, navigate to the repo and click Build Context.
- Provide the base goal, hard constraints, and optionally configure research tools (MCP).
- A local agent writes the context docs and optionally opens a PR.
Manually
- Edit
docs/ias/project-context.mdwith your project metadata:- Whether the system is in production
- Deployed version reference (if any)
- Sensitive data classification
- Non-negotiable constraints
- Stakeholders and success criteria
- Populate
docs/ias/context/base-goal.mdwith the high-level objective. - Add relevant references to
docs/ias/context/inputs.md(tickets, PRDs, architecture docs). - Run preflight to verify everything is ready:
ias preflight
Troubleshooting
| Problem | Solution |
|---|---|
| "Not a git repo" error | The target directory must be a Git repository. Run git init first, or let the interactive installer handle it. |
| "Tracked/staged changes" error | Commit or stash existing changes before bootstrapping. The installer needs a clean working tree when --commit is enabled. |
| Files not appearing after bootstrap | Check that you are on the correct branch. The bootstrap commit may be on ias/bootstrap rather than your default branch. |
| Console cannot verify install | Make sure the bootstrap commit has been merged to the repo's default branch. Use the Verify install action in the Console. |
Next step: Configure agents to start processing tasks against your bootstrapped repo.