Skip to content

Commit d0c26d0

Browse files
authored
Merge pull request #23 from pankaj4u4m/cc
Cc
2 parents 0e749cb + 061335b commit d0c26d0

234 files changed

Lines changed: 29400 additions & 5361 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.env.production.example

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ ATELIER_REQUIRE_AUTH=true
88
ATELIER_API_KEY=replace-me
99
ATELIER_SERVICE_URL=http://atelier:8787
1010
ATELIER_MCP_MODE=remote
11-
ATELIER_OPENMEMORY_ENABLED=false
1211
ATELIER_OPENMEMORY_MCP_SERVER_NAME=openmemory
1312
ATELIER_LESSON_PR_BOT_ENABLED=false
1413
GITHUB_TOKEN=

.githooks/pre-push

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ echo "📍 Checking Pushing $CURRENT_BRANCH to $REMOTE_BRANCH"
1818
# Skip session import + external reports — those are slow, code-independent, and
1919
# covered by tests; only host integrations need to be verified at push time.
2020
echo "🛠️ Running make install (host integrations only)..."
21-
if ! ATELIER_NO_IMPORT=1 ATELIER_STRICT=1 make install; then
21+
if ! ATELIER_STRICT=1 make install; then
2222
echo -e "\033[1;31m❌ make install failed. Push blocked.\033[0m"
2323
echo " Fix the install error locally or use 'git push --no-verify' if you intentionally need to bypass the hook."
2424
exit 1

.gitignore

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,8 @@ coverage.xml
5858
# Claude Code
5959
.codex/
6060
.claude/
61+
.antigravity/
62+
.antigravitycli/
6163

6264
# Claude Desktop
6365
.claude/
@@ -68,9 +70,8 @@ coverage.xml
6870
# Gemini CLI
6971
.gemini/
7072

71-
# Github copilot (generated by install, not source)
72-
.github/copilot-instructions.md*
73-
.github/chatmodes/
73+
# Github copilot workspace backups
74+
.github/copilot-instructions.md.atelier-backup.*
7475

7576
# VSCode test
7677
.vscode-test/
@@ -141,6 +142,7 @@ results/
141142
*.sql
142143
!src/**/*.sql
143144
*.sqlite3
145+
vector_cache.sqlite
144146
dump.rdb
145147
*.rdb
146148

AGENTS.md

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,21 @@ This file is a thin entrypoint. The live source of truth lives in the linked doc
1515

1616
## Operating loop
1717

18-
1. **Context** - read the relevant source of truth first and use `context` when the Atelier MCP surface is available.
19-
2. **Implement** - make the change, update directly related docs, and use `route` or `rescue` when needed.
20-
3. **Record** - record the outcome with `record` or the host alias that exposes the same capability.
18+
1. **Context** — call `mcp__atelier__context` with `task`, `files`, `domain` before touching any file.
19+
2. **Implement** — use Atelier tools for ALL file I/O and shell ops (see [Tool substitution](docs/agent-os/tool-substitution.md)). Use `route` to get model recommendations before expensive steps. Use `rescue` on repeated failures.
20+
3. **Record** — call `mcp__atelier__trace` at completion.
21+
22+
## Tool substitution — mandatory
23+
24+
| Use this | Instead of | Why |
25+
|---|---|---|
26+
| `mcp__atelier__read` | `Read` / `Bash(cat ...)` | outline-first, 80-95% fewer tokens on large files |
27+
| `mcp__atelier__search` | `Grep` / `Glob` / `Bash(grep/rg ...)` | ranked, budget-capped, ~280k tokens saved vs naive scan |
28+
| `mcp__atelier__edit` | `Edit` / `Write` | atomic multi-file, snapshot/rollback, diff recorded |
29+
| `mcp__atelier__shell` | `Bash(...)` | ANSI-stripped, line-truncated, token-compact |
30+
| `mcp__atelier__code op=search` | `Bash(grep -rn symbol ...)` | SCIP-indexed, zero subprocess cost |
31+
32+
**Bash is only for git commands and process management.** Do NOT use `Bash(cat file)`, `Bash(grep ...)`, or `Bash(find ...)` — use the atelier equivalents above.
2133

2234
## Project-specific invariants
2335

Makefile

Lines changed: 19 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -33,13 +33,18 @@ uninstall: ## Remove all Atelier agent-host integrations, hooks, and bin wrapper
3333
status: ## Show Atelier installation status
3434
@bash scripts/status.sh
3535

36-
start: ## Start the service and frontend with Docker Compose
37-
docker compose up --build -d
38-
docker compose logs -f
39-
restart: ## Restart the service and frontend with Docker Compose
40-
docker compose down
41-
docker compose up --build -d
42-
docker compose logs -f
36+
start: ## Start the service and frontend natively
37+
@if [ -f .env.worktree ]; then set -a; . ./.env.worktree; set +a; fi; \
38+
$(ATELIER_CMD) --root "$${ATELIER_STACK_ROOT:-$(ATELIER_STORE)}" stack start
39+
@if [ -f .env.worktree ]; then set -a; . ./.env.worktree; set +a; fi; \
40+
$(ATELIER_CMD) --root "$${ATELIER_STACK_ROOT:-$(ATELIER_STORE)}" stack logs -f
41+
restart: ## Restart the service and frontend natively
42+
@if [ -f .env.worktree ]; then set -a; . ./.env.worktree; set +a; fi; \
43+
$(ATELIER_CMD) --root "$${ATELIER_STACK_ROOT:-$(ATELIER_STORE)}" stack stop --force || true
44+
@if [ -f .env.worktree ]; then set -a; . ./.env.worktree; set +a; fi; \
45+
$(ATELIER_CMD) --root "$${ATELIER_STACK_ROOT:-$(ATELIER_STORE)}" stack start
46+
@if [ -f .env.worktree ]; then set -a; . ./.env.worktree; set +a; fi; \
47+
$(ATELIER_CMD) --root "$${ATELIER_STACK_ROOT:-$(ATELIER_STORE)}" stack logs -f
4348

4449
# --------------------------------------------------------------------------- #
4550
# Development #
@@ -107,10 +112,14 @@ pre-commit: format lint typecheck docs-check test ## Format, lint, typecheck, do
107112
benchmark: ## Run the full benchmark suite
108113
LOCAL=1 atelier benchmark full --json
109114

110-
bench-savings: ## Run the context-savings benchmark
111-
LOCAL=1 uv run python -m benchmarks.swe.savings_bench --json
115+
# `bench-savings` (V2) was removed — it was deprecated for measurement and
116+
# its percentage claims were not honored. Use `bench-ab` for real A/B numbers
117+
# or `bench-savings-honest` for the V3 synthetic replay.
112118

113-
bench-savings-honest: ## Run the V3 honest replay context-savings benchmark
119+
bench-ab: ## Real A/B benchmarks: run Atelier tool + native equivalent on the same input, persist deltas to ~/.atelier/savings_calibration.jsonl
120+
LOCAL=1 uv run pytest tests/benchmarks/ -v -m ab
121+
122+
bench-savings-honest: ## V3 honest replay (synthetic corpus, 50 prompts)
114123
rm -rf /tmp/atelier-v3-savings-replay
115124
ATELIER_ROOT=/tmp/atelier-v3-savings-replay LOCAL=1 uv run python -m benchmarks.swe.savings_replay --csv docs/benchmarks/v3-honest-savings-results.csv
116125

README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ The installer does four things by default:
4040
- installs `atelier` and `atelier-mcp` as user-level console commands in `~/.local/bin`
4141
- initializes the runtime store under `~/.atelier`
4242
- starts the detached `servicectl` background loop
43-
- attempts to start the optional visualization stack when Docker is available and `ATELIER_NO_STACK=1` is not set
43+
- attempts to start the optional visualization stack when npm is available and `ATELIER_NO_STACK=1` is not set
4444
- installs supported host integrations when the host CLI is found on `PATH`
4545

4646
Check the installed runtime:
@@ -62,7 +62,7 @@ Atelier automatically registers itself with your OS background manager (**system
6262
- `atelier ...` works with no HTTP server.
6363
- `atelier-mcp` works with no HTTP server.
6464
- `atelier background ...` manages the OS-level services (controller + stack).
65-
- `atelier stack ...` manages the visualization containers manually.
65+
- `atelier stack ...` manages the optional API + frontend processes manually.
6666

6767
Pure CLI mode still emits Atelier telemetry events unless you disable it with `atelier telemetry off` or `ATELIER_TELEMETRY=0`.
6868

@@ -108,7 +108,7 @@ atelier tools call search --dev --args '{"query":"read after write verification"
108108

109109
## Optional UI Stack
110110

111-
The UI is optional. The installer registers it as a background service by default if Docker is available. You can manage it alongside the controller:
111+
The UI is optional. The installer registers it as a background service by default when npm is available. You can manage it alongside the controller:
112112

113113
```bash
114114
# View logs for the visualization stack
@@ -156,7 +156,7 @@ The installer already attempts host integration when the relevant CLI is present
156156
- Codex CLI: MCP + AGENTS.md — [docs/hosts/codex-install.md](docs/hosts/codex-install.md)
157157
- Copilot: MCP + instructions — [docs/hosts/copilot-install.md](docs/hosts/copilot-install.md)
158158
- opencode: MCP — [docs/hosts/opencode-install.md](docs/hosts/opencode-install.md)
159-
- Gemini CLI: MCP — [docs/hosts/gemini-cli-install.md](docs/hosts/gemini-cli-install.md)
159+
- Antigravity: MCP — [docs/hosts/antigravity-install.md](docs/hosts/antigravity-install.md)
160160

161161
→ Full host overview: [docs/hosts/all-agent-clis.md](docs/hosts/all-agent-clis.md)
162162

@@ -224,7 +224,7 @@ rescue = client.rescue_failure(
224224
Atelier is a context runtime, not an agent framework and not a general-purpose vector database.
225225

226226
```text
227-
Agent Host (Claude Code / Codex / Copilot / opencode / Gemini CLI)
227+
Agent Host (Claude Code / Codex / Copilot / opencode / Antigravity)
228228
|
229229
| MCP stdio (or CLI / Python SDK)
230230
v

docker-compose.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ services:
5151
- "${ATELIER_FRONTEND_PORT:-3125}:3125"
5252
environment:
5353
- CHOKIDAR_USEPOLLING=true
54-
- VITE_API_URL=${VITE_API_URL:-http://localhost:8787}
54+
- VITE_API_URL=${VITE_API_URL:-http://atelier-service:8787}
5555
volumes:
5656
- ./frontend:/app
5757
- /app/node_modules

docs-site/sidebars.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ const sidebars: SidebarsConfig = {
5555
},
5656
{
5757
type: "doc",
58-
id: "hosts/gemini-cli-install",
58+
id: "hosts/antigravity-install",
5959
},
6060
{
6161
type: "doc",

docs/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ Use these when wiring Atelier into an editor or agent CLI:
5757
| [hosts/copilot-install.md](hosts/copilot-install.md) | Copilot |
5858
| [hosts/codex-install.md](hosts/codex-install.md) | Codex CLI |
5959
| [hosts/opencode-install.md](hosts/opencode-install.md) | opencode |
60-
| [hosts/gemini-cli-install.md](hosts/gemini-cli-install.md) | Gemini CLI |
60+
| [hosts/antigravity-install.md](hosts/antigravity-install.md) | Antigravity |
6161
| [integrations/host-matrix.md](integrations/host-matrix.md) | Install-path and enforcement matrix |
6262

6363
## SDK And API

docs/cli.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ optional visualization stack.
3131
| `atelier init` | Initialize the runtime store under `--root`. |
3232
| `atelier uninstall` | Remove Atelier-managed host integrations and wrappers. |
3333
| `atelier status` | Show local plugin, auth, and subscription status. |
34-
| `atelier stack ...` | Start, stop, inspect, or log the optional UI/API stack. |
34+
| `atelier stack ...` | Start, stop, inspect, or log the optional native UI/API stack. |
3535
| `atelier service ...` | Manage the HTTP/API service surface. |
3636
| `atelier background ...` | Manage OS-level background services and auto-updates. |
3737
| `atelier worker ...` | Inspect, enqueue, and run worker jobs. |

0 commit comments

Comments
 (0)