axstack 0.20.31 → 0.22.0
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 +25 -23
- package/bin/axstack.js +17 -5
- package/docs/installation.md +104 -51
- package/docs/workflows.md +176 -131
- package/package.json +3 -3
- package/profiles/presets/claude-only.json +23 -23
- package/profiles/presets/codex-only.json +10 -10
- package/profiles/presets/mixed.json +24 -24
- package/skills/axstack/references/automations.md +136 -137
- package/skills/axstack/references/autopilot.md +30 -17
- package/skills/axstack/references/candidate-publication.md +13 -8
- package/skills/axstack/references/contracts.md +13 -12
- package/skills/axstack/references/design-lens.md +3 -3
- package/skills/axstack/references/diligence.md +3 -1
- package/skills/axstack/references/evidence-archive.md +38 -33
- package/skills/axstack/references/lifecycle.md +64 -50
- package/skills/axstack/references/review-manager-prompt.md +13 -11
- package/skills/axstack/references/role-roster.md +12 -2
- package/skills/axstack/references/routing.md +33 -25
- package/skills/axstack/references/run-record.md +35 -16
- package/skills/axstack/references/t3-runtime.md +237 -0
- package/skills/axstack/references/test-audit-weekly.md +62 -0
- package/skills/axstack/references/test-value.md +120 -0
- package/skills/axstack/references/ui-verification.md +5 -1
- package/skills/axstack/references/workspace-hygiene.md +102 -156
- package/skills/axstack/scripts/pr-digest.js +120 -0
- package/skills/axstack/scripts/resolve-models.js +102 -38
- package/skills/axstack-align/SKILL.md +19 -56
- package/skills/axstack-audit/SKILL.md +12 -3
- package/skills/axstack-audit/references/record.md +1 -1
- package/skills/axstack-brainstorm/SKILL.md +24 -0
- package/skills/axstack-brainstorm/references/arena.md +56 -0
- package/skills/axstack-cleanup/SKILL.md +69 -87
- package/skills/axstack-debug/SKILL.md +1 -1
- package/skills/axstack-explain/SKILL.md +1 -1
- package/skills/axstack-explain/references/visual-qa.md +2 -0
- package/skills/axstack-implement/SKILL.md +56 -20
- package/skills/axstack-improve/SKILL.md +24 -4
- package/skills/axstack-relay/SKILL.md +8 -6
- package/skills/axstack-research/SKILL.md +11 -4
- package/skills/axstack-review/SKILL.md +34 -30
- package/skills/axstack-spec/SKILL.md +18 -13
- package/skills/axstack-tickets/SKILL.md +7 -8
- package/skills/axstack-watch/SKILL.md +97 -27
- package/skills/axstack-watch/references/watch-runtime.md +51 -66
- package/src/capabilities.js +33 -69
- package/src/installer.js +1 -1
- package/src/instructions.js +9 -4
- package/skills/axstack/references/orca-runtime.md +0 -202
- package/skills/axstack/scripts/trust-path.js +0 -123
package/README.md
CHANGED
|
@@ -6,15 +6,16 @@ Engineering workflows for AI agents, from a first question to a reviewed PR.
|
|
|
6
6
|
align → spec → tickets → implement → review → watch
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Axstack gives your current
|
|
10
|
-
review the exact result.
|
|
9
|
+
Axstack gives your current T3 thread a way to scope work, build it with tests, and
|
|
10
|
+
review the exact result. T3 Code provides worktrees, agent threads, and visible
|
|
11
11
|
coordination. You can start at the phase you need.
|
|
12
12
|
|
|
13
13
|
## What you can do
|
|
14
14
|
|
|
15
15
|
| Layer | Skill | What it does |
|
|
16
16
|
| --- | --- | --- |
|
|
17
|
-
| Plan | [axstack-align](skills/axstack-align/SKILL.md) | Settle scope through questions, a design lens sketch, and
|
|
17
|
+
| Plan | [axstack-align](skills/axstack-align/SKILL.md) | Settle scope through questions, a design lens sketch, and inline brainstorm validation. |
|
|
18
|
+
| Plan | [axstack-brainstorm](skills/axstack-brainstorm/SKILL.md) | Validate an approach with independent candidates; judges for hard choices. |
|
|
18
19
|
| Plan | [axstack-spec](skills/axstack-spec/SKILL.md) | Write and approve an observable specification. |
|
|
19
20
|
| Plan | [axstack-tickets](skills/axstack-tickets/SKILL.md) | Break approved scope into executable tasks. |
|
|
20
21
|
| Build | [axstack-implement](skills/axstack-implement/SKILL.md) | Build with strict TDD and an author → review → repair loop. |
|
|
@@ -36,17 +37,17 @@ implementation. Research, explanation, and peer review can start directly.
|
|
|
36
37
|
|
|
37
38
|
| Failure mode | How Axstack responds |
|
|
38
39
|
| --- | --- |
|
|
39
|
-
| Wrong thing built | Align rounds clarify the request; a
|
|
40
|
+
| Wrong thing built | Align rounds clarify the request; every brainstorm runs a light arena across configured families. Use judges only for Rung 2 hard-to-reverse choices. |
|
|
40
41
|
| Nobody really reviewed it | Strict TDD checks behavior first; with the mixed preset, cross-provider review checks the exact revision. |
|
|
41
42
|
| Design rot | The design lens sketches boundaries before a build; Improve surfaces evidenced changes later. |
|
|
42
|
-
| Agents left a mess |
|
|
43
|
+
| Agents left a mess | T3 makes delegation visible, one writer owns each PR, cleanup stays bounded, and a human merges. |
|
|
43
44
|
|
|
44
45
|
## Quick start
|
|
45
46
|
|
|
46
47
|
> [!NOTE]
|
|
47
48
|
> You need Bun >=1.3.14, Git, the GitHub CLI (`gh`) with `gh stack`, and a
|
|
48
|
-
> running
|
|
49
|
-
> The agents selected by your preset must also be available
|
|
49
|
+
> running T3 Code `0.0.46-nightly.20261003.2610` or newer.
|
|
50
|
+
> The agents selected by your preset must also be available through T3.
|
|
50
51
|
|
|
51
52
|
Install the CLI and skills. This example targets Codex:
|
|
52
53
|
|
|
@@ -56,7 +57,7 @@ axstack check --harness codex
|
|
|
56
57
|
axstack install --harness codex --preset mixed --yes
|
|
57
58
|
```
|
|
58
59
|
|
|
59
|
-
Open
|
|
60
|
+
Open a T3 thread and ask for the phase you need:
|
|
60
61
|
|
|
61
62
|
```text
|
|
62
63
|
$axstack-align Help me scope account recovery.
|
|
@@ -83,7 +84,9 @@ sets an explicit target without automatic migration.
|
|
|
83
84
|
Use `--harness claude`, `opencode`, or `antigravity` with `axstack check` and
|
|
84
85
|
`axstack install`, or provide explicit skill and instruction paths. Installation
|
|
85
86
|
adds an owned instruction block and preserves unrelated content. It does not
|
|
86
|
-
enable
|
|
87
|
+
enable schedules or prove that every configured model is available. T3 uses
|
|
88
|
+
its managed Antigravity runtime with separate browser sign-in; the IDE/`agy`
|
|
89
|
+
skill paths do not configure that runtime.
|
|
87
90
|
|
|
88
91
|
</details>
|
|
89
92
|
|
|
@@ -92,15 +95,16 @@ upgrades, conflicts, and uninstalling.
|
|
|
92
95
|
|
|
93
96
|
## How work stays controlled
|
|
94
97
|
|
|
95
|
-
- The current
|
|
96
|
-
visible
|
|
97
|
-
tools. Separate worktrees keep one writer on each candidate.
|
|
98
|
+
- The current T3 thread drives scope, coordination, and publication. Delegation uses
|
|
99
|
+
visible T3 orchestration via the `t3-code` MCP; harness-native subagent
|
|
100
|
+
tools are forbidden. Separate worktrees keep one writer on each candidate.
|
|
101
|
+
See the [T3 runtime boundary](skills/axstack/references/t3-runtime.md).
|
|
98
102
|
- Peer PRs receive two independent reviews. Authored changes receive a reviewer
|
|
99
103
|
selected from the author's configured pairing. Reviews bind to exact revisions.
|
|
100
104
|
- Agents keep accepted decisions and evidence for resume. Missing authority,
|
|
101
105
|
unavailable models, and serious risks surface as holds. The human merges by default.
|
|
102
106
|
|
|
103
|
-
Choose one explicit preset (
|
|
107
|
+
Choose one explicit preset (each contains all role IDs): [mixed](profiles/presets/mixed.json)
|
|
104
108
|
(recommended), [codex-only](profiles/presets/codex-only.json), or
|
|
105
109
|
[claude-only](profiles/presets/claude-only.json). Mixed supports cross-provider
|
|
106
110
|
implementation review; single-provider presets have workflow limits and are
|
|
@@ -115,20 +119,18 @@ pair seats in `mixed` and `codex-only`; `claude-only` records them as absent.
|
|
|
115
119
|
## Optional PR automation
|
|
116
120
|
|
|
117
121
|
Manual review works without a schedule. Own open PRs in chat-run mode use a
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
or close, the user cancels, or it expires.
|
|
122
|
+
bound T3 schedule to resume the driver thread every 10 minutes. Each wake
|
|
123
|
+
checks feedback, base, CI, and approval. Stop and verify deletion of the watch
|
|
124
|
+
when all watched PRs merge or close and release is settled or not applicable, the user cancels,
|
|
125
|
+
or it expires.
|
|
123
126
|
|
|
124
|
-
An optional native
|
|
125
|
-
review automation never merges for you.
|
|
126
|
-
|
|
127
|
-
[PR-manager setup and safety](skills/axstack/references/automations.md).
|
|
127
|
+
An optional native T3 review manager runs finite peer-review passes every 15
|
|
128
|
+
minutes; the review automation never merges for you. Activation needs live
|
|
129
|
+
host validation. See [PR-manager setup and safety](skills/axstack/references/automations.md).
|
|
128
130
|
|
|
129
131
|
## Some notes
|
|
130
132
|
|
|
131
|
-
-
|
|
133
|
+
- T3 Code is the only supported active runtime. Axstack adds no daemon or runtime
|
|
132
134
|
database.
|
|
133
135
|
- A human merges by default.
|
|
134
136
|
- This is an early project; expect the workflows to evolve.
|
package/bin/axstack.js
CHANGED
|
@@ -14,6 +14,7 @@ import {
|
|
|
14
14
|
validateBundle,
|
|
15
15
|
} from '../src/installer.js';
|
|
16
16
|
import { BUN_FLOOR, checkCapabilities, meetsFloor, runRealCheck } from '../src/capabilities.js';
|
|
17
|
+
import { findLegacyRoutingLines } from '../src/instructions.js';
|
|
17
18
|
import { harnessLocations } from '../src/locations.js';
|
|
18
19
|
|
|
19
20
|
// import.meta.dir is already a filesystem path (no URL conversion, so
|
|
@@ -50,8 +51,8 @@ Usage:
|
|
|
50
51
|
Commands:
|
|
51
52
|
install Validate a skill bundle, then copy owned skills and selected role
|
|
52
53
|
data and record ownership hashes.
|
|
53
|
-
check Probe Bun, Git, gh stack, and
|
|
54
|
-
|
|
54
|
+
check Probe Bun, Git, gh stack, and the T3 Code version floor.
|
|
55
|
+
Driver preflight verifies MCP readiness inside a T3 thread.
|
|
55
56
|
uninstall Remove only unchanged Axstack-owned assets. User edits survive.
|
|
56
57
|
|
|
57
58
|
Flags:
|
|
@@ -110,7 +111,7 @@ function parseArgs(argv) {
|
|
|
110
111
|
const tok = rest.shift();
|
|
111
112
|
if (tok === '--profile') {
|
|
112
113
|
throw new Error(
|
|
113
|
-
'--profile is obsolete in the
|
|
114
|
+
'--profile is obsolete in the T3 Code installer; role data is installed as axstack/roles.json and legacy Paseo cleanup is separate',
|
|
114
115
|
);
|
|
115
116
|
}
|
|
116
117
|
if (wantsValue.has(tok)) {
|
|
@@ -398,7 +399,6 @@ async function main() {
|
|
|
398
399
|
}
|
|
399
400
|
if (command === 'check') {
|
|
400
401
|
const report = await checkCapabilities(runRealCheck);
|
|
401
|
-
printCheckReport(report);
|
|
402
402
|
if (flags.bundle) {
|
|
403
403
|
const bundle = await validateBundle(resolve(flags.bundle));
|
|
404
404
|
const presetNames = Object.keys(bundle.presets);
|
|
@@ -418,8 +418,20 @@ async function main() {
|
|
|
418
418
|
`instruction ${instruction.status}: ${instruction.path}` +
|
|
419
419
|
(instruction.reason ? ` (${instruction.reason})` : ''),
|
|
420
420
|
);
|
|
421
|
-
if (instruction.status !== 'owned')
|
|
421
|
+
if (instruction.status !== 'owned') {
|
|
422
|
+
report.gaps.push(`instruction ${instruction.status}: ${instruction.reason ?? 'Axstack binding is absent'}`);
|
|
423
|
+
}
|
|
424
|
+
let text;
|
|
425
|
+
try {
|
|
426
|
+
text = readFileSync(instruction.path, 'utf8');
|
|
427
|
+
} catch (err) {
|
|
428
|
+
if (err?.code !== 'ENOENT') throw err;
|
|
429
|
+
}
|
|
430
|
+
if (text !== undefined && findLegacyRoutingLines(text).length > 0) {
|
|
431
|
+
report.gaps.push('gap: legacy routing remains outside the Axstack block; preserved for manual migration');
|
|
432
|
+
}
|
|
422
433
|
}
|
|
434
|
+
printCheckReport(report);
|
|
423
435
|
if (report.gaps.length > 0) process.exitCode = 1;
|
|
424
436
|
return;
|
|
425
437
|
}
|
package/docs/installation.md
CHANGED
|
@@ -1,16 +1,45 @@
|
|
|
1
1
|
# Installation
|
|
2
2
|
|
|
3
3
|
Axstack's Bun CLI installs owned chat skills plus one selected role snapshot and
|
|
4
|
-
checks host capabilities.
|
|
5
|
-
does not dispatch agents, edit
|
|
4
|
+
checks host capabilities. T3 Code is the only supported active runtime. The CLI
|
|
5
|
+
does not dispatch agents, edit T3 settings, run a scheduler, or maintain a
|
|
6
6
|
workflow database.
|
|
7
7
|
|
|
8
8
|
Requirements: Bun >=1.3.14, Git, `gh`, the `gh stack` extension, and a running
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
T3 Code `0.0.46-nightly.20261003.2610` or newer. The driver is a T3 thread
|
|
10
|
+
with the `t3-code` MCP. See the [T3 runtime boundary](../skills/axstack/references/t3-runtime.md).
|
|
11
11
|
There are no runtime dependencies. Filesystem access uses Bun-backed `node:fs`
|
|
12
12
|
and `node:fs/promises`; no other Node runtime contract is introduced.
|
|
13
13
|
|
|
14
|
+
## T3 setup
|
|
15
|
+
|
|
16
|
+
Set `worktreeCleanup` to `off` for every Axstack project before dispatch;
|
|
17
|
+
Axstack preserves author worktrees and salvages evidence before retirement.
|
|
18
|
+
The driver reads back this setting via `t3_project_read` where exposed, or
|
|
19
|
+
records the setup limitation.
|
|
20
|
+
|
|
21
|
+
For remote and Android access on the existing tailnet, run:
|
|
22
|
+
|
|
23
|
+
```sh
|
|
24
|
+
t3 serve --tailscale-serve
|
|
25
|
+
t3 pair
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
Run `t3 serve --tailscale-serve` as a VPS user service and pair the Android
|
|
29
|
+
app with `t3 pair`. T3 Connect is outside this setup. Service installation,
|
|
30
|
+
network access, and pairing require their own authorized host checks.
|
|
31
|
+
|
|
32
|
+
Install Antigravity through T3 provider settings using its managed runtime,
|
|
33
|
+
then complete the user's browser sign-in before its canary. T3 uses Google's
|
|
34
|
+
Antigravity ACP agent (`agy_acp_server`); the IDE/`agy` CLI skill paths below
|
|
35
|
+
are separate installer targets and do not configure this managed runtime.
|
|
36
|
+
Antigravity roles receive self-contained briefs; its runtime does not read
|
|
37
|
+
`~/.agents/skills`. A missing runtime, sign-in, or canary holds those roles.
|
|
38
|
+
|
|
39
|
+
Grok CLI must be >=1.0.13 on desktop and VPS. T3 advertising Grok does not
|
|
40
|
+
prove the CLI runs. Hermes relay remains unchanged: verify native `hermes send`
|
|
41
|
+
and its configured home channel under recorded notification authority.
|
|
42
|
+
|
|
14
43
|
## Commands
|
|
15
44
|
|
|
16
45
|
### Install
|
|
@@ -55,7 +84,7 @@ conflict. Then finish that owner with
|
|
|
55
84
|
the settings sidecar preserves the value while any other install still owns it.
|
|
56
85
|
|
|
57
86
|
- `--claude-settings` and `--no-claude-settings` control the existing Claude
|
|
58
|
-
Code subagent-default transaction. They do not configure
|
|
87
|
+
Code subagent-default transaction. They do not configure T3 roles.
|
|
59
88
|
- `--force` may replace an edited owned asset; it never adopts or removes
|
|
60
89
|
unrelated state.
|
|
61
90
|
- `--yes` confirms writes under the user's home directory. Tests use temporary
|
|
@@ -71,11 +100,11 @@ profiles/presets/codex-only.json
|
|
|
71
100
|
profiles/presets/claude-only.json
|
|
72
101
|
```
|
|
73
102
|
|
|
74
|
-
Each has exactly `{ "version": 1, "roles": [...] }`
|
|
75
|
-
|
|
103
|
+
Each has exactly `{ "version": 1, "roles": [...] }` and lists all role IDs
|
|
104
|
+
in the same order. Installation writes `<skills-dir>/axstack/roles.json` as
|
|
76
105
|
`{ "version": 1, "preset": "<selected preset>", "roles": [...] }` and records
|
|
77
106
|
its ownership hash like every other installed skill asset. There is no second
|
|
78
|
-
role store and no
|
|
107
|
+
role store and no T3 configuration merge.
|
|
79
108
|
|
|
80
109
|
### Check
|
|
81
110
|
|
|
@@ -83,13 +112,14 @@ role store and no Orca configuration merge.
|
|
|
83
112
|
axstack check [--bundle <dir>] [--instructions <file>] [--skills-dir <dir>|--harness <name>]
|
|
84
113
|
```
|
|
85
114
|
|
|
86
|
-
The check separates Bun/Git/`gh stack` availability,
|
|
87
|
-
|
|
88
|
-
|
|
115
|
+
The check separates Bun/Git/`gh stack` availability, the `t3` executable and
|
|
116
|
+
version floor, in-session MCP readiness, and bundle validity.
|
|
117
|
+
The CLI labels in-session MCP readiness as "verified by driver preflight";
|
|
118
|
+
the driver saves `orchestrator_capabilities` and follows its advertised schema.
|
|
89
119
|
With an instruction target, it separately reports whether the marker block is
|
|
90
|
-
owned, missing, unowned, edited, or bound to a different path.
|
|
91
|
-
|
|
92
|
-
|
|
120
|
+
owned, missing, unowned, edited, or bound to a different path. Hand-written
|
|
121
|
+
legacy routing outside the owned block is reported for manual migration and
|
|
122
|
+
preserved byte for byte.
|
|
93
123
|
|
|
94
124
|
A successful check is not provider/model availability, effective permission,
|
|
95
125
|
skill reload, task execution, mobile delivery, or end-to-end compatibility
|
|
@@ -110,10 +140,12 @@ are pruned only when empty, and the target root is never removed.
|
|
|
110
140
|
The deterministic `<!-- axstack:begin v1 -->` / `<!-- axstack:end -->` block
|
|
111
141
|
contains the target-derived Axstack entry path and model-free routing prose. It
|
|
112
142
|
also routes every subagent, delegated worker, reviewer, and cross-harness dispatch
|
|
113
|
-
through
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
143
|
+
through the `t3-code` MCP. It forbids harness-native subagent tools. The current
|
|
144
|
+
T3 thread is the driver; read-only roles use async `delegate_task`, while authors
|
|
145
|
+
use `t3_thread_launch` in their own SHA-pinned worktrees. The standing block
|
|
146
|
+
authorizes writer launch; it grants no push, merge, release, or host mutation.
|
|
147
|
+
The [runtime reference](../skills/axstack/references/t3-runtime.md) owns the dispatch
|
|
148
|
+
and receipt protocol.
|
|
117
149
|
|
|
118
150
|
Create, update, repeated install, check, and uninstall preserve every byte and
|
|
119
151
|
the file mode outside the markers. The manifest binds the canonical instruction
|
|
@@ -172,7 +204,7 @@ to rewrite them.
|
|
|
172
204
|
## Role behavior after installation
|
|
173
205
|
|
|
174
206
|
The runtime reads `roles.json` from the installed shared root `skills/axstack/`.
|
|
175
|
-
A new run records the selected preset plus all
|
|
207
|
+
A new run records the selected preset plus all role IDs. Class rows resolve
|
|
176
208
|
at run start; each role snapshot records class, exact ID, source, and time.
|
|
177
209
|
An active run and resume reuse that snapshot after a later preset install unless
|
|
178
210
|
the user explicitly changes it and accepts the resulting evidence invalidation.
|
|
@@ -188,36 +220,40 @@ reconciles their findings.
|
|
|
188
220
|
|
|
189
221
|
The mixed checker and `axstack-research-web-google` have provider
|
|
190
222
|
`antigravity`; mixed `axstack-research-x` has provider `grok`. All three use
|
|
191
|
-
`model: null`
|
|
192
|
-
|
|
193
|
-
|
|
223
|
+
`model: null` with notes authorizing their agent-ID routes; T3 resolves Grok's
|
|
224
|
+
exact model from the first entry for that provider in saved capabilities.
|
|
225
|
+
For Antigravity `model:null` roles, select the first listed model whose ID ends
|
|
226
|
+
with `-<effort>` from saved capabilities and record its exact ID.
|
|
227
|
+
Missing effort-suffix matches hold resolution for Antigravity, including empty
|
|
228
|
+
model catalogs. The single-provider presets configure the checker and keep
|
|
194
229
|
both cross-provider research routes as intentional absences. Their
|
|
195
230
|
unavailable adviser and round-2 seat remain explicit same-provider
|
|
196
231
|
`model: null` roles, which do not make installation unready;
|
|
197
232
|
Align and Spec still hold until both Astra and Opus can return independent
|
|
198
|
-
receipts.
|
|
199
|
-
|
|
200
|
-
|
|
233
|
+
receipts. Every brainstorm runs a light arena across configured families.
|
|
234
|
+
Use judges only for Rung 2 hard-to-reverse choices: round 1 needs Opus; round 2,
|
|
235
|
+
if invoked, needs escalation Fable and Astra; a required seat that is unavailable
|
|
236
|
+
holds that round. The current chat drives on whatever
|
|
201
237
|
model runs it; no preset carries a driver role. Every other missing, invalid, unsupported, or unavailable role value holds only
|
|
202
|
-
the affected work. Codex class resolution reads the
|
|
203
|
-
`skills/axstack/scripts/resolve-models.js`;
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
subscription inference or quota routing applies.
|
|
238
|
+
the affected work. Codex and Claude class resolution reads the saved T3 capabilities catalog via
|
|
239
|
+
`skills/axstack/scripts/resolve-models.js --provider`; missing or malformed
|
|
240
|
+
catalogs hold. A preset model is used as given; class rows resolve to the newest
|
|
241
|
+
matching catalog ID. Resume retains the recorded snapshot without re-resolution.
|
|
242
|
+
Rejection, timeout, quota, and auth failures hold; no subscription inference,
|
|
243
|
+
quota routing, or alternative-model retry applies.
|
|
209
244
|
|
|
210
245
|
`modeId` and similar permission fields remain conservative declared intent.
|
|
211
|
-
They do not prove
|
|
212
|
-
|
|
213
|
-
|
|
246
|
+
They do not prove effective T3 `runtimeMode`, sandboxing, or permission parity.
|
|
247
|
+
Requested provider/model/effort, input acceptance, effective session settings,
|
|
248
|
+
and completed behavior are separate evidence classes. Follow the runtime
|
|
249
|
+
reference for provider option IDs and configuration read-back.
|
|
214
250
|
|
|
215
251
|
## Claude Code subagent default
|
|
216
252
|
|
|
217
253
|
The preserved Claude-settings feature manages only
|
|
218
254
|
`env.CLAUDE_CODE_SUBAGENT_MODEL = "opus"` when its existing ownership and
|
|
219
255
|
availability conditions allow. It does not change the main conversation,
|
|
220
|
-
select an Axstack role, force built-in agents, or configure
|
|
256
|
+
select an Axstack role, force built-in agents, or configure T3.
|
|
221
257
|
|
|
222
258
|
Axstack merges that one key and preserves all unrelated settings and environment
|
|
223
259
|
values. A pre-existing value is preserved and never adopted. Missing Claude,
|
|
@@ -238,25 +274,27 @@ survives.
|
|
|
238
274
|
| Claude | `~/.claude/skills` | documented upstream |
|
|
239
275
|
| Codex | `~/.agents/skills` | documented upstream |
|
|
240
276
|
| OpenCode | `~/.config/opencode/skills` | documented upstream |
|
|
241
|
-
| Antigravity | `~/.gemini/config/skills` | documented upstream |
|
|
277
|
+
| Antigravity IDE / `agy` CLI | `~/.gemini/config/skills` | documented upstream |
|
|
242
278
|
| Grok | explicit `--skills-dir` only | auto-discovery unverified |
|
|
243
279
|
|
|
244
280
|
Prefer explicit paths and current upstream CLI guidance. Installing files does
|
|
245
281
|
not prove that a running harness reloaded them.
|
|
246
282
|
|
|
247
|
-
## Runtime
|
|
283
|
+
## Runtime preflight and schedules
|
|
248
284
|
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
discovery is a setup gap, not a reason to fall back or invent commands. Guide
|
|
254
|
-
discovery does not prove an operation works; Linear documents, provider/model
|
|
255
|
-
routing, and live automation behavior need separate preflights.
|
|
285
|
+
At an action boundary, load the packaged [T3 runtime reference](../skills/axstack/references/t3-runtime.md)
|
|
286
|
+
and save the actual `orchestrator_capabilities` JSON. Missing capability holds
|
|
287
|
+
the affected operation. Provider/model routing, Linear documents through the
|
|
288
|
+
executor MCP, and live schedule behavior need separate preflights.
|
|
256
289
|
|
|
257
|
-
Installation creates no production schedule and adds no custom scheduler.
|
|
258
|
-
|
|
259
|
-
|
|
290
|
+
Installation creates no production schedule and adds no custom scheduler.
|
|
291
|
+
Chat-run own-PR watch uses a bound T3 schedule every 10 minutes by default;
|
|
292
|
+
record its ID, driver thread, and expiry. Missing schedule capability holds
|
|
293
|
+
activation. Delete the schedule by its exact ID and verify absence with
|
|
294
|
+
`list_scheduled_tasks` when the watch ends; uncertainty preserves the hold.
|
|
295
|
+
The optional review manager uses an unbound 15-minute T3 schedule and requires
|
|
296
|
+
its separate native canary before activation. Installed guidance does not prove
|
|
297
|
+
live behavior. See [Review manager](../skills/axstack/references/automations.md).
|
|
260
298
|
|
|
261
299
|
## Historical migration
|
|
262
300
|
|
|
@@ -275,8 +313,8 @@ retired `axstack-driver` row leaves `roles.json` on the next install because
|
|
|
275
313
|
that file is rewritten as one owned snapshot. A --force uninstall/install
|
|
276
314
|
cycle remains only for discarding edited copies you have decided to abandon;
|
|
277
315
|
edited, custom, and unknown assets otherwise survive. `axstack-explain`
|
|
278
|
-
supersedes the old docs route. Full ownership transfer uses
|
|
279
|
-
|
|
316
|
+
supersedes the old docs route. Full ownership transfer uses the T3 runtime
|
|
317
|
+
contract and still requires explicit recipient acceptance.
|
|
280
318
|
|
|
281
319
|
Do not mutate live historical configuration during development or migration
|
|
282
320
|
tests. Host cutover, old-timer cleanup, release installation, and global cleanup
|
|
@@ -292,4 +330,19 @@ axstack uninstall --skills-dir /tmp/ax-skills --instructions /tmp/AGENTS.md
|
|
|
292
330
|
```
|
|
293
331
|
|
|
294
332
|
The second install should report no changes. These scratch examples do not
|
|
295
|
-
activate
|
|
333
|
+
activate T3 threads or schedules.
|
|
334
|
+
|
|
335
|
+
## Rollback
|
|
336
|
+
|
|
337
|
+
Use the recorded host-mutation authority and verified backups for these steps:
|
|
338
|
+
|
|
339
|
+
1. Reinstall `axstack@0.20.31` (v0.20.31) on desktop and VPS.
|
|
340
|
+
2. Restore the backed-up `~/.claude/CLAUDE.md` and `~/.codex/AGENTS.md` global instructions on both hosts.
|
|
341
|
+
3. Set the recorded T3 manager schedule to `enabled:false` and verify the disabled state.
|
|
342
|
+
4. Delete every armed run watch by its recorded schedule ID and verify absence.
|
|
343
|
+
5. Stop and disable the `t3 serve` user service on the VPS.
|
|
344
|
+
6. Re-enable the Orca automation and verify its enabled state.
|
|
345
|
+
|
|
346
|
+
Orca stays installed for one week after the VPS canary; keep its automation disabled,
|
|
347
|
+
rather than deleting it, after the T3 canary passes. Do not uninstall it during
|
|
348
|
+
that retention window.
|