@inventeer.tech/apex 0.2.32 → 0.2.33
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +174 -184
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
**AI-powered software delivery agent. From task description to open pull request — across multiple repos.**
|
|
4
4
|
|
|
5
|
-
[]()
|
|
6
6
|
[](https://github.com/Inventeer/apex/blob/main/LICENSE)
|
|
7
7
|
[](https://www.npmjs.com/package/@inventeer.tech/apex)
|
|
8
8
|
|
|
@@ -10,47 +10,120 @@
|
|
|
10
10
|
|
|
11
11
|
## What is APEX?
|
|
12
12
|
|
|
13
|
-
APEX is a terminal CLI that
|
|
13
|
+
APEX is a terminal CLI that takes a developer from a Linear ticket to open pull requests across all their repositories — with full codebase awareness, persistent memory, and zero configuration files left in repos.
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
You type: /eng.start ENG-123
|
|
17
|
-
APEX does: fetches the ticket → reads all your repos → proposes a cross-repo plan
|
|
18
|
-
You press: [A] to approve
|
|
19
|
-
APEX does: writes the code, runs tests, opens one PR per repo
|
|
20
|
-
```
|
|
15
|
+
You describe the task, approve the plan, and watch the changes land in real time across every repository in your stack.
|
|
21
16
|
|
|
22
17
|
**What runs on your machine:** the `apex` binary, a native AI runtime engine, and your git repos.
|
|
23
18
|
**What lives in the cloud:** codebase semantic search (RAG), episodic session memory, LLM proxy, org config.
|
|
24
|
-
**What never happens:** files created in your repos
|
|
19
|
+
**What never happens:** files created in your repos.
|
|
25
20
|
|
|
26
21
|
---
|
|
27
22
|
|
|
28
23
|
## Install
|
|
29
24
|
|
|
30
25
|
```bash
|
|
26
|
+
# npm (cross-platform)
|
|
31
27
|
npm install -g @inventeer.tech/apex
|
|
32
|
-
```
|
|
33
|
-
|
|
34
|
-
The binary is self-contained — no Go, Docker, or external runtime required.
|
|
35
|
-
|
|
36
|
-
**Other install methods:**
|
|
37
28
|
|
|
38
|
-
```bash
|
|
39
29
|
# macOS — Homebrew
|
|
40
30
|
brew install Inventeer/tap/apex
|
|
41
|
-
|
|
42
|
-
# macOS / Linux — shell script
|
|
43
|
-
curl -fsSL https://install.apex.dev | sh
|
|
44
31
|
```
|
|
45
32
|
|
|
46
|
-
|
|
33
|
+
The binary is self-contained — no Go, Docker, or external runtime required.
|
|
47
34
|
|
|
48
35
|
```bash
|
|
49
|
-
apex version
|
|
36
|
+
apex version # verify install
|
|
37
|
+
apex doctor # run pre-flight checks
|
|
50
38
|
```
|
|
51
39
|
|
|
52
40
|
---
|
|
53
41
|
|
|
42
|
+
## Why APEX is Different
|
|
43
|
+
|
|
44
|
+
| | Terminal AI assistant | Autonomous cloud agent | **APEX** |
|
|
45
|
+
|---|---|---|---|
|
|
46
|
+
| **Scope** | One file at a time | One task, one repo | One task, **all repos** |
|
|
47
|
+
| **Execution** | Local, inline edits | Remote sandbox — you wait | Local — you watch changes live |
|
|
48
|
+
| **Plan approval** | No | No | **Yes — nothing runs without your sign-off** |
|
|
49
|
+
| **Memory between sessions** | None | Limited | **Episodic memory — resumes in <500 tokens** |
|
|
50
|
+
| **Codebase context** | Open files only | Repo snapshot | **Full RAG across all repos, always fresh** |
|
|
51
|
+
| **Org knowledge** | None | None | **ADRs, runbooks, specs — permanently searchable** |
|
|
52
|
+
| **Architectural decisions** | None | None | **Logged automatically, queryable** |
|
|
53
|
+
| **Delivery workflow** | Chat | Autonomous | **Phased: investigate → plan → implement → validate → ship** |
|
|
54
|
+
| **Quality gate** | Manual | Basic CI | **Pre-PR: tests + lint + type check + auto-fix** |
|
|
55
|
+
| **Token visibility** | None | None | **Per-model usage tracking** |
|
|
56
|
+
|
|
57
|
+
### An invisible senior engineer on every task
|
|
58
|
+
|
|
59
|
+
Every time you run a command in APEX, a curated framework of specialized agents, skills, and guardrails activates silently in the background — loaded from the cloud at startup, invisible to you, updating without any action on your part.
|
|
60
|
+
|
|
61
|
+
**8 specialized agents** swap in automatically depending on what you're doing:
|
|
62
|
+
|
|
63
|
+
- `/eng.start` activates the delivery agent — investigates, recalls past sessions, maps cross-repo dependencies
|
|
64
|
+
- `/eng.pre-pr` activates the code reviewer + QA test planner in parallel
|
|
65
|
+
- `/eng.debug` activates the bug hunter — root-cause analysis, not guessing
|
|
66
|
+
- `/qa-gate` activates the quality champion with numeric scoring
|
|
67
|
+
|
|
68
|
+
**30+ operational skills** activate on demand, invisibly:
|
|
69
|
+
|
|
70
|
+
- Detected sequential DB writes? The `eng-database` skill activates — transaction boundaries, rollback scenarios, isolation levels
|
|
71
|
+
- Found `.graphql` files in scope? The `eng-graphql` skill activates — schema validation, codegen, type contracts
|
|
72
|
+
- Pre-PR check? `qa-static-analysis`, `qa-security-scan`, `qa-test-plan`, and `eng-confidence` run in sequence
|
|
73
|
+
- Opening PRs? `eng-pr` and `eng-github` ensure branch naming, commit conventions, and cross-repo dependency notes
|
|
74
|
+
|
|
75
|
+
**Phase guardrails enforced by rules, not discipline:**
|
|
76
|
+
|
|
77
|
+
- `/eng.start` — no code written, analysis only
|
|
78
|
+
- `/eng.plan` — no code, no commits, plan only
|
|
79
|
+
- `/eng.work` — no commits until `/eng.pr`
|
|
80
|
+
- Acceptance criteria must exist before investigation proceeds
|
|
81
|
+
- Breaking changes require documented consumer impact
|
|
82
|
+
|
|
83
|
+
None of this requires configuration. It's part of every session, for every developer in your organization.
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
### Multi-repo by design
|
|
88
|
+
|
|
89
|
+
A workspace groups all your repositories. One task can plan, write, test, and open PRs across your backend, frontend, and shared types simultaneously. The AI knows your full stack — not just the file you have open.
|
|
90
|
+
|
|
91
|
+
### Five layers of always-active context
|
|
92
|
+
|
|
93
|
+
Every LLM call carries five layers injected automatically — you never paste context manually:
|
|
94
|
+
|
|
95
|
+
- **Codebase RAG** — every file across all repos, chunked and semantically indexed. The AI knows your schema when writing the endpoint, and your types when writing the frontend.
|
|
96
|
+
- **Episodic memory** — when you close the terminal, APEX saves a structured summary (completed, pending, files changed, decisions made, next steps). The next session resumes in under 500 tokens. After months of work, APEX still knows why things were built the way they were.
|
|
97
|
+
- **Org knowledge base** — ADRs, runbooks, API specs, onboarding docs uploaded with `apex knowledge add` are permanently searchable. The AI cites your actual documentation instead of inventing conventions.
|
|
98
|
+
- **Working context** — the full active session state, preserved mid-task.
|
|
99
|
+
- **Framework intelligence** — curated engineering agents, quality guardrails, and delivery workflows loaded at startup. No configuration required.
|
|
100
|
+
|
|
101
|
+
### Plan before code — you stay in control
|
|
102
|
+
|
|
103
|
+
APEX never writes a line of code without showing you a phased plan first. You approve, edit, or cancel before any file is touched. Every run of `/eng.work` is a deliberate, reviewed commitment.
|
|
104
|
+
|
|
105
|
+
### Built-in quality gates
|
|
106
|
+
|
|
107
|
+
`/eng.pre-pr` runs tests, type checks, and lint across all repos before any PR is opened. Failures are auto-fixed up to 3 times. You see a scored quality report before anything goes to review.
|
|
108
|
+
|
|
109
|
+
### Self-correcting execution loop
|
|
110
|
+
|
|
111
|
+
The AI doesn't stop on the first test failure. It diagnoses the error, tries a different strategy, and escalates through recovery hints before surfacing a report. Sessions run until real progress stops — not until a fixed step count is hit.
|
|
112
|
+
|
|
113
|
+
### Architectural decisions, not just code
|
|
114
|
+
|
|
115
|
+
Every decision the AI makes — why it chose an approach, what it considered — is recorded automatically and stored. Run `apex decisions` to see the full log. New team members can understand why the code was written the way it was.
|
|
116
|
+
|
|
117
|
+
### Always-fresh codebase context
|
|
118
|
+
|
|
119
|
+
Push webhooks trigger incremental re-indexing automatically on every commit. The TUI shows an amber warning when the index is stale. The AI is never working from outdated code.
|
|
120
|
+
|
|
121
|
+
### Token visibility, per model
|
|
122
|
+
|
|
123
|
+
Every LLM call is metered. Run `apex usage` to see token consumption broken down by model and provider. No surprise bills, no silent runaway sessions.
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
|
|
54
127
|
## The Workspace Concept
|
|
55
128
|
|
|
56
129
|
> This is the most important thing to understand about APEX.
|
|
@@ -64,11 +137,11 @@ workspace: payment-platform
|
|
|
64
137
|
└── shared-types/ (TypeScript contracts)
|
|
65
138
|
```
|
|
66
139
|
|
|
67
|
-
When APEX works on `ENG-123: add refund endpoint`, it
|
|
68
|
-
-
|
|
69
|
-
-
|
|
70
|
-
-
|
|
71
|
-
-
|
|
140
|
+
When APEX works on `ENG-123: add refund endpoint`, it:
|
|
141
|
+
- Reads the backend schema, frontend payment hooks, and shared type definitions
|
|
142
|
+
- Generates a plan that touches all three repos
|
|
143
|
+
- Writes changes across all repos in one session
|
|
144
|
+
- Opens one PR per repo, with cross-repo dependency notes in each body
|
|
72
145
|
|
|
73
146
|
**You register each repo once**, then forget about it:
|
|
74
147
|
|
|
@@ -82,61 +155,26 @@ APEX detects the git remote and technology stack automatically. All three repos
|
|
|
82
155
|
|
|
83
156
|
---
|
|
84
157
|
|
|
85
|
-
##
|
|
86
|
-
|
|
87
|
-
Follow these steps once to go from zero to your first AI-assisted PR.
|
|
158
|
+
## Setup (once per machine)
|
|
88
159
|
|
|
89
|
-
###
|
|
160
|
+
### 1 — Install and authenticate
|
|
90
161
|
|
|
91
162
|
```bash
|
|
163
|
+
npm install -g @inventeer.tech/apex
|
|
92
164
|
apex login
|
|
93
165
|
```
|
|
94
166
|
|
|
95
|
-
|
|
167
|
+
`apex login` opens the GitHub Device Flow in your browser. After approval, your organization's AI configuration — models, credentials, and behavior — is loaded automatically from the cloud.
|
|
96
168
|
|
|
97
|
-
###
|
|
98
|
-
|
|
99
|
-
APEX needs an LLM API key. Add at least one:
|
|
169
|
+
### 2 — Connect Linear
|
|
100
170
|
|
|
101
171
|
```bash
|
|
102
|
-
# Anthropic Claude (recommended)
|
|
103
|
-
apex config set anthropic_api_key sk-ant-...
|
|
104
|
-
apex config set default_model anthropic/claude-opus-4-5
|
|
105
|
-
|
|
106
|
-
# Or OpenAI
|
|
107
|
-
apex config set openai_api_key sk-...
|
|
108
|
-
apex config set default_model openai/gpt-4o
|
|
109
|
-
|
|
110
|
-
# Or Google Gemini
|
|
111
|
-
apex config set google_api_key AI...
|
|
112
|
-
apex config set default_model google/gemini-2.0-flash
|
|
113
|
-
```
|
|
114
|
-
|
|
115
|
-
You can configure separate models for planning (reasoning) vs. coding (speed):
|
|
116
|
-
|
|
117
|
-
```bash
|
|
118
|
-
apex config set planning_model anthropic/claude-opus-4-5
|
|
119
|
-
apex config set coding_model anthropic/claude-sonnet-4-5
|
|
120
|
-
```
|
|
121
|
-
|
|
122
|
-
### Step 3 — Connect your issue tracker (optional but recommended)
|
|
123
|
-
|
|
124
|
-
```bash
|
|
125
|
-
# Linear
|
|
126
172
|
apex auth linear
|
|
127
|
-
|
|
128
|
-
# Jira
|
|
129
|
-
apex config set jira_base_url https://myorg.atlassian.net
|
|
130
|
-
apex config set jira_api_token ...
|
|
131
|
-
apex config set jira_email you@company.com
|
|
132
|
-
|
|
133
|
-
# GitHub (for PRs)
|
|
134
|
-
apex config set github_token ghp_...
|
|
135
173
|
```
|
|
136
174
|
|
|
137
|
-
|
|
175
|
+
This opens the Linear OAuth flow. Once connected, APEX fetches full ticket details, acceptance criteria, and linked issues every time you start a task with a Linear ID.
|
|
138
176
|
|
|
139
|
-
###
|
|
177
|
+
### 3 — Register your repos
|
|
140
178
|
|
|
141
179
|
Run from inside each repository you want APEX to work with:
|
|
142
180
|
|
|
@@ -145,46 +183,29 @@ cd ~/repos/backend && apex init
|
|
|
145
183
|
cd ~/repos/frontend && apex init
|
|
146
184
|
```
|
|
147
185
|
|
|
148
|
-
|
|
186
|
+
APEX auto-detects the git remote and groups repos into a workspace.
|
|
149
187
|
|
|
150
|
-
###
|
|
188
|
+
### 4 — Index the codebase
|
|
151
189
|
|
|
152
190
|
```bash
|
|
153
191
|
apex index
|
|
154
192
|
```
|
|
155
193
|
|
|
156
|
-
|
|
194
|
+
Reads all source files, chunks them into overlapping segments, generates semantic embeddings, and stores them for search. Run once after registration, and again after large changes.
|
|
157
195
|
|
|
158
|
-
> The TUI shows an amber warning when the index is more than 24 hours old.
|
|
196
|
+
> The TUI shows an amber warning when the RAG index is more than 24 hours old.
|
|
159
197
|
|
|
160
|
-
###
|
|
161
|
-
|
|
162
|
-
```bash
|
|
163
|
-
apex doctor
|
|
164
|
-
```
|
|
165
|
-
|
|
166
|
-
Expected output:
|
|
167
|
-
|
|
168
|
-
```
|
|
169
|
-
✅ native runtime: built-in
|
|
170
|
-
✅ model API key: anthropic configured
|
|
171
|
-
✅ workspace: backend, frontend registered
|
|
172
|
-
✅ gateway: connected
|
|
173
|
-
```
|
|
174
|
-
|
|
175
|
-
Fix any ❌ items before continuing.
|
|
176
|
-
|
|
177
|
-
### Step 7 — Launch
|
|
198
|
+
### 5 — Launch
|
|
178
199
|
|
|
179
200
|
```bash
|
|
180
201
|
apex
|
|
181
202
|
```
|
|
182
203
|
|
|
183
|
-
APEX opens the workspace selector and the 3-panel TUI
|
|
204
|
+
APEX opens the workspace selector and the 3-panel TUI. From here, everything happens through slash commands.
|
|
184
205
|
|
|
185
206
|
```
|
|
186
207
|
╔═══════════════════════════════════════════════════════════════════════════╗
|
|
187
|
-
║ APEX ▸ payment-platform v0.2.
|
|
208
|
+
║ APEX ▸ payment-platform v0.2.32 ║
|
|
188
209
|
╠══════════════════╦════════════════════════════════╦════════════════════════╣
|
|
189
210
|
║ Workspace ║ ║ Live Diff ║
|
|
190
211
|
║ ────────────── ║ APEX ║ ──────────────────── ║
|
|
@@ -193,8 +214,8 @@ APEX opens the workspace selector and the 3-panel TUI:
|
|
|
193
214
|
║ • shared-types ║ › 4,139 files in RAG ║ client.ts +12 -3 ║
|
|
194
215
|
║ ║ › Episodic memory: 7 sessions║ ║
|
|
195
216
|
║ Sessions ║ ║ frontend/ ║
|
|
196
|
-
║ ─────────────── ║ Type /
|
|
197
|
-
║ 1 paused ║ or
|
|
217
|
+
║ ─────────────── ║ Type /init-apex to begin ║ src/checkout/ ║
|
|
218
|
+
║ 1 paused ║ or /warm-up to load context ║ Payment.tsx +8 -1 ║
|
|
198
219
|
╠══════════════════╩════════════════════════════════╩════════════════════════╣
|
|
199
220
|
║ › _ ║
|
|
200
221
|
╚═══════════════════════════════════════════════════════════════════════════╝
|
|
@@ -204,133 +225,123 @@ APEX opens the workspace selector and the 3-panel TUI:
|
|
|
204
225
|
|
|
205
226
|
## The Delivery Workflow
|
|
206
227
|
|
|
207
|
-
|
|
228
|
+
Every engineering task follows this sequence inside the TUI.
|
|
229
|
+
|
|
230
|
+
---
|
|
208
231
|
|
|
209
|
-
### `/init-apex` · Initialize
|
|
232
|
+
### `/init-apex` · Initialize (first use)
|
|
210
233
|
|
|
211
234
|
```
|
|
212
235
|
/init-apex
|
|
213
236
|
```
|
|
214
237
|
|
|
215
|
-
|
|
238
|
+
Run once when starting in a new workspace. APEX loads your organization's configuration, reads environment files across repos, and bootstraps the session context.
|
|
216
239
|
|
|
217
240
|
---
|
|
218
241
|
|
|
219
|
-
### `/warm-up` · Load context
|
|
242
|
+
### `/warm-up` · Load context (start of each day)
|
|
220
243
|
|
|
221
244
|
```
|
|
222
245
|
/warm-up
|
|
223
246
|
```
|
|
224
247
|
|
|
225
|
-
APEX reads git status across all repos, loads recent decisions, and
|
|
248
|
+
APEX reads git status across all repos, loads recent architectural decisions, recalls past sessions, and builds a fresh summary of where things stand. Run this each morning or at the start of a new session. Takes ~30 seconds.
|
|
226
249
|
|
|
227
250
|
---
|
|
228
251
|
|
|
229
|
-
### `/eng.start ENG-XX` · Investigate
|
|
252
|
+
### `/eng.start ENG-XX` · Investigate
|
|
230
253
|
|
|
231
254
|
```
|
|
232
255
|
/eng.start ENG-123
|
|
233
256
|
```
|
|
234
257
|
|
|
235
|
-
APEX
|
|
236
|
-
1. Fetches the Linear/Jira ticket (description, ACs, linked issues)
|
|
237
|
-
2. Recalls relevant past sessions from episodic memory
|
|
238
|
-
3. Searches the codebase for related code via semantic RAG
|
|
239
|
-
4. Analyzes all affected repos
|
|
240
|
-
5. Produces a phased cross-repo implementation plan
|
|
258
|
+
APEX fetches the Linear ticket (description, acceptance criteria, linked issues), recalls relevant past sessions from episodic memory, and searches the codebase via semantic RAG. It produces a full cross-repo investigation report with a clear problem statement and scope.
|
|
241
259
|
|
|
242
|
-
|
|
260
|
+
---
|
|
261
|
+
|
|
262
|
+
### `/eng.plan` · Build the execution plan
|
|
263
|
+
|
|
264
|
+
```
|
|
265
|
+
/eng.plan
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
Based on the investigation, APEX generates a phased cross-repo implementation plan — broken into atomic tasks, one per file or concern, across all affected repos. Review the plan carefully.
|
|
243
269
|
|
|
244
270
|
```
|
|
245
271
|
[ A ] Approve [ E ] Edit [ C ] Cancel
|
|
246
272
|
```
|
|
247
273
|
|
|
274
|
+
Nothing is written until you approve.
|
|
275
|
+
|
|
248
276
|
---
|
|
249
277
|
|
|
250
|
-
### `/eng.work` · Execute
|
|
278
|
+
### `/eng.work` · Execute
|
|
251
279
|
|
|
252
280
|
```
|
|
253
281
|
/eng.work
|
|
254
282
|
```
|
|
255
283
|
|
|
256
|
-
APEX
|
|
284
|
+
APEX executes the approved plan. The **Live Diff panel** updates in real time as files change across every repo. The AI runs tests as it goes, self-corrects on failures (up to 3 attempts per task), and records every architectural decision it makes.
|
|
257
285
|
|
|
258
|
-
You can watch, or
|
|
286
|
+
You can watch, step away, or answer questions if prompted.
|
|
259
287
|
|
|
260
288
|
---
|
|
261
289
|
|
|
262
|
-
### `/eng.pre-pr` ·
|
|
290
|
+
### `/eng.pre-pr` · Quality gate
|
|
263
291
|
|
|
264
292
|
```
|
|
265
293
|
/eng.pre-pr
|
|
266
294
|
```
|
|
267
295
|
|
|
268
|
-
APEX runs a full
|
|
296
|
+
Before opening PRs, APEX runs a full validation pass across all repos:
|
|
269
297
|
- Unit and integration tests
|
|
270
298
|
- Type checking
|
|
271
299
|
- Lint
|
|
272
|
-
- Cross-repo dependency
|
|
300
|
+
- Cross-repo dependency consistency
|
|
273
301
|
|
|
274
|
-
|
|
302
|
+
Failures are auto-fixed. You receive a scored quality report with a pass/fail verdict.
|
|
275
303
|
|
|
276
304
|
---
|
|
277
305
|
|
|
278
|
-
### `/eng.pr` ·
|
|
306
|
+
### `/eng.pr` · Ship
|
|
279
307
|
|
|
280
308
|
```
|
|
281
309
|
/eng.pr
|
|
282
310
|
```
|
|
283
311
|
|
|
284
|
-
APEX opens **one PR per repo**, each
|
|
312
|
+
APEX opens **one PR per repo**, each with:
|
|
285
313
|
- A description derived from the ticket
|
|
286
|
-
- A
|
|
287
|
-
- Cross-repo dependency notes (e.g.
|
|
288
|
-
- Linear
|
|
314
|
+
- A summary of what changed and why
|
|
315
|
+
- Cross-repo dependency notes (e.g. `shared-types#42` must merge first)
|
|
316
|
+
- Linear ticket status updated automatically
|
|
289
317
|
|
|
290
318
|
---
|
|
291
319
|
|
|
292
|
-
## Session Memory
|
|
293
|
-
|
|
294
|
-
APEX remembers everything between sessions.
|
|
295
|
-
|
|
296
|
-
When you close the terminal or pause a session, APEX generates a structured summary:
|
|
297
|
-
- What was completed
|
|
298
|
-
- What is pending
|
|
299
|
-
- Which files were modified
|
|
300
|
-
- Architectural decisions made
|
|
301
|
-
- Next steps
|
|
302
|
-
|
|
303
|
-
The next time you start a session on a similar task, that context is automatically injected into the AI — in under 500 tokens of overhead.
|
|
304
|
-
|
|
305
|
-
```bash
|
|
306
|
-
# List paused sessions
|
|
307
|
-
apex session list
|
|
320
|
+
## Session Memory in Practice
|
|
308
321
|
|
|
309
|
-
# Resume exactly where you left off
|
|
310
|
-
apex session resume <id>
|
|
311
322
|
```
|
|
312
|
-
|
|
313
|
-
|
|
323
|
+
Monday 5pm: you close the terminal, task 70% done
|
|
324
|
+
Tuesday 9am: apex session resume <id>
|
|
325
|
+
→ AI picks up exactly where it stopped, no re-explaining needed
|
|
326
|
+
```
|
|
314
327
|
|
|
315
328
|
---
|
|
316
329
|
|
|
317
330
|
## Slash Commands Reference
|
|
318
331
|
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
|
322
|
-
|
|
323
|
-
| `/
|
|
324
|
-
| `/
|
|
325
|
-
| `/eng.
|
|
326
|
-
| `/eng.
|
|
327
|
-
| `/eng.
|
|
328
|
-
| `/eng.
|
|
329
|
-
| `/eng.
|
|
330
|
-
| `/eng.
|
|
331
|
-
| `/
|
|
332
|
-
| `/eng.docs` | Update technical documentation |
|
|
333
|
-
| `/qa-gate` | Run full quality gate with numeric scoring |
|
|
332
|
+
| Command | Phase | What it does |
|
|
333
|
+
|---|---|---|
|
|
334
|
+
| `/init-apex` | Setup | Initialize workspace config and load org context |
|
|
335
|
+
| `/warm-up` | Daily | Load git status, decisions, and workspace summary |
|
|
336
|
+
| `/eng.start ENG-XX` | Investigate | Fetch ticket, search codebase, produce investigation |
|
|
337
|
+
| `/eng.plan` | Plan | Generate phased cross-repo implementation plan |
|
|
338
|
+
| `/eng.work` | Implement | Execute approved plan across all repos |
|
|
339
|
+
| `/eng.pre-pr` | Validate | Tests, lint, type check, auto-fix failures |
|
|
340
|
+
| `/eng.pr` | Ship | Open one PR per repo, update Linear ticket |
|
|
341
|
+
| `/eng.debug` | Debug | Root-cause analysis and incident investigation |
|
|
342
|
+
| `/eng.review` | Review | Review current diff and staged changes |
|
|
343
|
+
| `/eng.docs` | Document | Update technical docs and READMEs |
|
|
344
|
+
| `/qa-gate` | QA | Full quality gate with numeric scoring |
|
|
334
345
|
|
|
335
346
|
---
|
|
336
347
|
|
|
@@ -340,6 +351,7 @@ Type these inside the APEX TUI:
|
|
|
340
351
|
apex # Open workspace selector and launch
|
|
341
352
|
apex login # Authenticate with GitHub
|
|
342
353
|
apex logout # Remove stored credentials
|
|
354
|
+
apex auth linear # Connect Linear via OAuth
|
|
343
355
|
apex init # Register current repo in a workspace
|
|
344
356
|
apex index # Index workspace repos for semantic search
|
|
345
357
|
apex index --repo backend # Index a specific repo only
|
|
@@ -350,8 +362,7 @@ apex session resume <id> # Resume a paused session
|
|
|
350
362
|
apex workspace list # List all workspaces
|
|
351
363
|
apex workspace edit <name> # Add or remove repos from a workspace
|
|
352
364
|
apex knowledge add <path> # Upload docs/ADRs to org knowledge base
|
|
353
|
-
apex
|
|
354
|
-
apex config show # Show current configuration
|
|
365
|
+
apex knowledge search <query> # Semantic search over knowledge base
|
|
355
366
|
apex usage # Show token consumption by model/provider
|
|
356
367
|
apex decisions # Show saved architectural decisions
|
|
357
368
|
apex logs # Tail the latest AI engine log
|
|
@@ -360,49 +371,28 @@ apex version # Print version
|
|
|
360
371
|
|
|
361
372
|
---
|
|
362
373
|
|
|
363
|
-
## Integrations
|
|
364
|
-
|
|
365
|
-
| Integration | What APEX does |
|
|
366
|
-
|---|---|
|
|
367
|
-
| **Linear** | Fetches ticket description and ACs; updates status when PR is opened |
|
|
368
|
-
| **Jira** | Fetches issue details; transitions status on PR open |
|
|
369
|
-
| **GitHub** | Opens PRs; monitors CI via Checks API; push webhook for auto re-index |
|
|
370
|
-
| **GitLab** | Opens merge requests; checks pipeline status |
|
|
371
|
-
|
|
372
|
-
Connect them:
|
|
373
|
-
|
|
374
|
-
```bash
|
|
375
|
-
apex auth linear # OAuth flow
|
|
376
|
-
apex config set github_token ghp_...
|
|
377
|
-
apex config set jira_base_url https://myorg.atlassian.net
|
|
378
|
-
apex config set jira_api_token ...
|
|
379
|
-
apex config set jira_email you@company.com
|
|
380
|
-
```
|
|
381
|
-
|
|
382
|
-
---
|
|
383
|
-
|
|
384
374
|
## Common Questions
|
|
385
375
|
|
|
386
|
-
**Q: Does APEX create files in my repos?**
|
|
387
|
-
|
|
376
|
+
**Q: Does APEX create any files in my repos?**
|
|
377
|
+
Two files, both intentional. `/init-apex` creates `ENV.md` — a workspace environment reference that should go in `.gitignore`. It also creates `AGENTS.md` — an AI context file that should be committed to the repo so the AI understands the codebase conventions. Beyond these, no configuration, state, or lock files are ever created in your repos.
|
|
388
378
|
|
|
389
379
|
**Q: Do I need to re-explain my codebase every session?**
|
|
390
|
-
No. APEX indexes your code
|
|
380
|
+
No. APEX indexes your code semantically and stores structured session summaries. Both are injected automatically into every LLM call. After months of work, APEX still knows why things were built the way they were.
|
|
391
381
|
|
|
392
382
|
**Q: What if a task spans 4 repos?**
|
|
393
383
|
Register all 4 with `apex init`. APEX operates across all of them in every session. The plan, code changes, and PRs span all repos automatically.
|
|
394
384
|
|
|
395
|
-
**Q: Can I
|
|
396
|
-
Yes.
|
|
385
|
+
**Q: Can I start a task without a Linear ticket?**
|
|
386
|
+
Yes. Describe the task in plain English directly in the TUI:
|
|
397
387
|
```
|
|
398
388
|
› add rate limiting to the payments API, 100 req/min per user
|
|
399
389
|
```
|
|
400
390
|
|
|
401
391
|
**Q: How do I pause mid-task and resume tomorrow?**
|
|
402
|
-
Close the
|
|
392
|
+
Close the terminal (Ctrl+C). APEX automatically generates a structured session summary. Tomorrow, run `apex session resume <id>` and the AI picks up exactly where it left off.
|
|
403
393
|
|
|
404
|
-
**Q: What
|
|
405
|
-
|
|
394
|
+
**Q: What happens if a test fails during `/eng.work`?**
|
|
395
|
+
APEX auto-corrects up to 3 times per failure, trying different strategies. If it can't resolve it, it surfaces a recovery report explaining what it tried and what's blocked.
|
|
406
396
|
|
|
407
397
|
---
|
|
408
398
|
|