Trust and local-first boundaries
aic is a closed-source, free-for-personal-use, local-first tool. This page explains which local files it touches, when it accesses the network, and what you should or should not commit to Git.
1. The boundary in one sentence
aic is designed around local project configuration. Every TUI operation is intended to complete locally — that is part of the product positioning, not a marketing slogan. For sensitive environments, review the install script, generated project files, and release artifacts before deploying.
This page does not claim “no telemetry”, because aic v1.0.x still contacts the Registry on aic install / update / sync to fetch Skill / Context / MCP templates.
2. Local files aic reads
| File | When |
|---|---|
<project>/.aic/.aicrc | Every aic / sync / install / update / context use invocation |
<project>/.aic/.aic-env | aic env check and rendering env-required Skills |
~/.aic/config.toml | At startup |
~/.aic/aic-env | aic env check / list --scope merged |
~/.aic/cache/** | install / update / sync |
<project>/.claude/**, <project>/.codex/**, <project>/.gemini/**, <project>/.opencode/** | During link detection (sync / update) |
Tool global configs like ~/.codex/config.toml | Read before merging in aic mcp sync |
3. Local files aic writes
| File | When |
|---|---|
<project>/.aic/.aicrc | install / remove / context use / mcp install and friends |
<project>/.aic/.aic-env | env add / env edit (scope = project) |
~/.aic/config.toml | TUI theme switch, initialization |
~/.aic/aic-env | env add / edit (scope = global), env promote |
Tool directories like <project>/.claude/skills/<name> | install / sync (controlled links) |
AIC managed block in CLAUDE.md / AGENTS.md / GEMINI.md | context use / context update |
Tool global configs (e.g. ~/.codex/config.toml, opencode.json) | aic mcp sync (transactional write, rolls back on failure) |
Provider profile backup ~/.aic/cache/<provider>/.<name>.bak | Provider switch |
aic will never write:
- Any file outside
.aic/in the project (other than the AIC managed block withinCLAUDE.mdand friends). - User shell config (
~/.bashrc/~/.zshrc/ PowerShell profile). git configor Git hooks.
4. Network requests
| Request | When | Purpose |
|---|---|---|
| Git protocol (ssh / https / http) to the Registry | Triggered by install / update / sync | Pull or update ~/.aic/cache |
Registry index.yaml | Local parse after sync | List installable Skills / Contexts / MCPs |
Known network requests are listed above (Registry sync). Everyday TUI operations (startup, panel switching, viewing details, editing env) all run locally. aic is not a model client and does not call model APIs directly.
Note: The aic binary is closed-source, so this page cannot exhaustively audit all outbound requests via source code. If future versions introduce additional outbound requests, this page will be updated accordingly.
5. What to commit / not commit to Git
Commit
<project>/.aic/.aicrc— team declaration of fact.- Other files inside
<project>/.aic/except.aic-env(for example, non-sensitive metadata that may be added later).
Do not commit
<project>/.aic/.aic-env— sensitive env values.- Personal-private config inside tool-specific directories (such as personal tokens in
~/.codex/config.toml). - The entire
~/.aic/directory (user-level, not in the project).
aic init automatically adds .aic/.aic-env to .gitignore.
6. Known limitations
- Closed source: the aic binary cannot be audited. Boundaries documented here are authoritative.
- Registry dependency: fully offline scenarios cannot install new Skills / Contexts / MCPs; already-installed content continues to work.
- Windows Beta: certain environments require admin privileges or Developer Mode to create symlinks. Without them, aic falls back to copy sync while keeping the same directory layout.
- OpenCode OAuth: aic does not manage OpenCode OAuth flows. If a Provider profile requires login, complete it manually inside OpenCode.
7. Reporting trust-related issues
Submit an Issue or email via Contact. Prefix the email subject with [TRUST].