@sentropic/track 0.10.4 → 0.10.6

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AAsCA,MAAM,WAAW,KAAK;IACpB,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IACxB,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;CACzB;AAsKD,wBAAgB,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,KAAK,GAAG,MAAM,CA8F3D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AAuCA,MAAM,WAAW,KAAK;IACpB,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IACxB,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;CACzB;AA4KD,wBAAgB,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,KAAK,GAAG,MAAM,CAkG3D"}
package/dist/cli/index.js CHANGED
@@ -4,6 +4,7 @@ import { basename, dirname, isAbsolute, join, resolve } from 'node:path';
4
4
  import { readHead } from '../events/head.js';
5
5
  import { EventStore } from '../events/store.js';
6
6
  import { validate } from '../events/validate.js';
7
+ import { cmdInstallSkills } from './install-skills.js';
7
8
  import { initTrackDir, resolveTrackDir, resolveTrackDirOrNull } from './resolve.js';
8
9
  import { DomainError } from '../model/item.js';
9
10
  import { formatRows } from '../report/format.js';
@@ -27,6 +28,7 @@ const USAGE = `usage: track <command>
27
28
  decision outcome <decisionId> <go|no-go|deferred>
28
29
  decision dossier <decisionId> --context <c>
29
30
  decision disposition <itemId> <orientation|commitment> <required|skipped|not-applicable>
31
+ decision add-artifact <decisionId> --kind <h2a-decision-dossier|rendered-view|mockup> [--negotiation-ref <n>] [--dossier-hash <h>] [--view-ref <v>] [--source-dossier-hash <h>] [--label <l>] [--client-token <t>]
30
32
  blocker raise --target <id> --kind <decision|dependency> [--ref <id>] [--reason <r>] [--rule <linked-done|linked-accepted|manual>] [--scope <intra|extra>] [--engagement-ref <e>]
31
33
  blocker resolve <blockerId>
32
34
  blocker resolve-external --engagement-ref <e>
@@ -41,6 +43,7 @@ const USAGE = `usage: track <command>
41
43
  validate [--commit <sha>]
42
44
  branch import <BRANCH.md> [--commit <sha>]
43
45
  ingest <file.jsonl> --workspace <w>
46
+ install-skills --host <claude|codex|gemini|agy|all> [--scope user|project] [--force]
44
47
  `;
45
48
  // Write enums (ITEM_KINDS, SPEC_TARGETS, REALIZE_TARGETS, DECISION_KINDS, OUTCOMES, GATES, DISPOSITIONS,
46
49
  // BLOCKER_KINDS, RESOLUTION_RULES, EVIDENCE_KINDS, RESULTS) are sourced from the ingest contract — the
@@ -52,6 +55,10 @@ const FROM_FORMATS = ['junit', 'json'];
52
55
  const BUCKETS_ARG = ['AWAITED', 'DROPPED', 'DONE', 'TO-DO'];
53
56
  // `n/a` is decision-only; `query` projects non-decision rows, so it would never match.
54
57
  const ACCEPTANCES = ['fail', 'waived', 'unknown', 'stale', 'pass'];
58
+ // The DossierArtifact discriminator (M5 §3.1). CLI-local: the union SHAPE is validated fail-closed in the
59
+ // facade (`assertDossierArtifact`); this only gates the surface flag so an unknown --kind fails at the
60
+ // CLI boundary rather than assembling a half-built artifact.
61
+ const DOSSIER_ARTIFACT_KINDS = ['h2a-decision-dossier', 'rendered-view', 'mockup'];
55
62
  function eventsPathOf(trackDir) {
56
63
  return join(trackDir, 'events.jsonl');
57
64
  }
@@ -187,6 +194,10 @@ export function runCli(rawArgv, io) {
187
194
  io.out(`Initialized .track/ in ${dirname(dir)}\n`);
188
195
  return 0;
189
196
  }
197
+ case 'install-skills':
198
+ // Deploys the in-repo `skills/` bundle onto a host agent's native location ON DEMAND. It
199
+ // touches no `.track` store, so it dispatches alongside `init` (before store resolution).
200
+ return cmdInstallSkills(rest, io);
190
201
  // READ commands SERVE-EMPTY (launch/serve alignment): they resolve via the non-throwing
191
202
  // `resolveTrackDirOrNull`, so an unadopted repo yields rc=0 + an honest-empty view + a stderr
192
203
  // `track init` hint, never a boot crash. NEVER creates. A bad EXPLICIT override still throws
@@ -355,7 +366,41 @@ function cmdDecision(args, ctx) {
355
366
  io.out('ok\n');
356
367
  return 0;
357
368
  }
358
- io.err('usage: track decision <new|outcome|dossier|disposition>\n');
369
+ if (sub === 'add-artifact') {
370
+ // Append ONE record-only DossierArtifact (M5 §3.2) — a pointer to an h2a decision dossier / rendered
371
+ // view / mockup. The CLI assembles the discriminated branch from flags by --kind; `addDecisionArtifact`
372
+ // validates fail-closed (assertDossierArtifact), so a malformed union throws → rc=1. `--client-token`
373
+ // gives append-once idempotency. The CLI relays comprehension[] only via the ingest seam, never here:
374
+ // a local human deciding in chat is NOT a signed h2a attestation, so the CLI does not fake one.
375
+ const decisionId = positional[0];
376
+ const kind = oneOf(opt(flags, 'kind'), DOSSIER_ARTIFACT_KINDS, '--kind');
377
+ // Assemble the discriminated branch from flags by --kind, but DON'T pre-validate the branch-specific
378
+ // fields here: `assertDossierArtifact` (inside addDecisionArtifact) is the SINGLE fail-closed authority
379
+ // for the union (it owns the exact "requires a dossierHash"/"requires a viewRef" wording), so a missing
380
+ // field surfaces the union error verbatim — CLI/facade/ingest stay in lockstep. `as DossierArtifact` is
381
+ // the assembly cast; the runtime check is the validator's.
382
+ const artifact = {
383
+ kind,
384
+ ...(opt(flags, 'negotiation-ref') !== undefined ? { negotiationRef: opt(flags, 'negotiation-ref') } : {}),
385
+ ...(opt(flags, 'dossier-hash') !== undefined ? { dossierHash: opt(flags, 'dossier-hash') } : {}),
386
+ ...(opt(flags, 'view-ref') !== undefined ? { viewRef: opt(flags, 'view-ref') } : {}),
387
+ ...(opt(flags, 'source-dossier-hash') !== undefined ? { sourceDossierHash: opt(flags, 'source-dossier-hash') } : {}),
388
+ ...(opt(flags, 'label') !== undefined ? { label: opt(flags, 'label') } : {}),
389
+ };
390
+ const clientToken = opt(flags, 'client-token');
391
+ // Idempotency (v2.3c) at the CLI boundary: the facade stamps the token onto the event but does NOT
392
+ // itself dedup (that is the ingest seam's job; the CLI is the local primary writer). So a retried
393
+ // `--client-token` must be skipped HERE, or it would append twice. Mirror the seam: if any prior event
394
+ // already carries this token, it landed — no-op, rc=0. Touches no contract and no write guard.
395
+ if (clientToken !== undefined && store(ctx).readAll().some((e) => e.clientToken === clientToken)) {
396
+ io.out('no-op: client-token already applied\n');
397
+ return 0;
398
+ }
399
+ track.addDecisionArtifact(decisionId, artifact, clientToken);
400
+ io.out('ok\n');
401
+ return 0;
402
+ }
403
+ io.err('usage: track decision <new|outcome|dossier|disposition|add-artifact>\n');
359
404
  return 2;
360
405
  }
361
406
  function cmdBlocker(args, ctx) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { CliIO } from './index.js';
2
+ /**
3
+ * `track install-skills --host <claude|codex|gemini|agy|all> [--scope user|project] [--force]`.
4
+ * `--host` may repeat or be `all` to target several hosts in one run.
5
+ */
6
+ export declare function cmdInstallSkills(args: string[], io: CliIO): number;
7
+ //# sourceMappingURL=install-skills.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install-skills.d.ts","sourceRoot":"","sources":["../../src/cli/install-skills.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAkMvC;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,KAAK,GAAG,MAAM,CA8DlE"}
@@ -0,0 +1,243 @@
1
+ import { existsSync, mkdirSync, readFileSync, readdirSync, writeFileSync } from 'node:fs';
2
+ import { homedir } from 'node:os';
3
+ import { dirname, join } from 'node:path';
4
+ import { fileURLToPath } from 'node:url';
5
+ import { DomainError } from '../model/item.js';
6
+ /**
7
+ * `track install-skills` — deploy the in-repo `skills/` bundle onto a host agent's NATIVE skill
8
+ * location, ON DEMAND. The in-repo `skills/` dir is the SINGLE source of truth; the installer
9
+ * copies (claude/codex) or translates (gemini/agy) — it never forks the content.
10
+ *
11
+ * Graceful + idempotent: identical files are left alone (no-op); a DIFFERING existing file is
12
+ * reported and SKIPPED unless `--force` is given; the installer never edits a repo the user did
13
+ * not target (`--scope project` touches the CURRENT repo only), and `--scope user` (default)
14
+ * writes only under the user's `~/.<host>` dirs. HOME is resolved from `$TRACK_INSTALL_HOME` (for
15
+ * tests/injection) then `os.homedir()` — the user's path is NEVER hardcoded.
16
+ */
17
+ // `dist/cli/install-skills.js` and `src/cli/install-skills.ts` both sit two dirs below the package
18
+ // root, where `skills/` lives (shipped via package.json `files`). Same anchor `version.ts` uses.
19
+ const SKILLS_DIR = join(dirname(fileURLToPath(import.meta.url)), '..', '..', 'skills');
20
+ /** The ONE skill this installer deploys; the canonical source is `skills/present-decision/`. */
21
+ const SKILL_NAME = 'present-decision';
22
+ const HOSTS = ['claude', 'codex', 'gemini', 'agy'];
23
+ const SCOPES = ['user', 'project'];
24
+ /** Resolve the user's HOME — injectable via `$TRACK_INSTALL_HOME` so tests never touch the real `~`. */
25
+ function userHome() {
26
+ const injected = process.env['TRACK_INSTALL_HOME'];
27
+ return injected !== undefined && injected.length > 0 ? injected : homedir();
28
+ }
29
+ /**
30
+ * Minimal SKILL.md frontmatter parser: the canonical `---\nname: …\ndescription: …\n---\n<body>`
31
+ * shape every shipped skill uses. Multi-line description values fold via indent continuation.
32
+ */
33
+ function parseSkill(raw) {
34
+ const match = /^---\r?\n([\s\S]*?)\r?\n---\r?\n?([\s\S]*)$/m.exec(raw);
35
+ if (match === null)
36
+ throw new DomainError('SKILL.md missing YAML frontmatter (expected `---` delimiters)');
37
+ const [, fmRaw, body] = match;
38
+ const fm = {};
39
+ let currentKey;
40
+ for (const line of (fmRaw ?? '').split(/\r?\n/)) {
41
+ const kv = /^([a-zA-Z][\w-]*)\s*:\s*(.*)$/.exec(line);
42
+ if (kv) {
43
+ currentKey = kv[1];
44
+ fm[currentKey] = kv[2].trim().replace(/^["']|["']$/g, '');
45
+ }
46
+ else if (currentKey !== undefined && /^\s+/.test(line)) {
47
+ fm[currentKey] = `${fm[currentKey]} ${line.trim()}`;
48
+ }
49
+ }
50
+ const name = fm['name'];
51
+ const description = fm['description'];
52
+ if (name === undefined || description === undefined) {
53
+ throw new DomainError('SKILL.md frontmatter must declare both `name` and `description`');
54
+ }
55
+ return { name, description, body: (body ?? '').trimStart() };
56
+ }
57
+ /**
58
+ * Render a parsed skill as a Gemini CLI custom-command TOML (`~/.gemini/commands/<name>.toml`):
59
+ * a top-level `description` plus a triple-quoted `prompt` that inlines the procedure. The body is
60
+ * verbatim (TOML literal strings need no escaping); the bundled skill contains no `'''`.
61
+ */
62
+ function renderGeminiToml(skill) {
63
+ const description = skill.description.replace(/"/g, '\\"');
64
+ const prompt = `You are the ${skill.name} custom command for Gemini CLI.\n\n${skill.body}`;
65
+ return [`description = "${description}"`, `prompt = '''`, prompt, `'''`, ''].join('\n');
66
+ }
67
+ /** Write `content` to `target`, honoring idempotency + the no-clobber-without-force rule. */
68
+ function writeGuarded(target, content, force, result) {
69
+ if (existsSync(target)) {
70
+ const current = readFileSync(target, 'utf8');
71
+ if (current === content) {
72
+ result.unchanged.push(target);
73
+ return;
74
+ }
75
+ if (!force) {
76
+ result.skipped.push({ path: target, reason: 'differs (use --force to overwrite)' });
77
+ return;
78
+ }
79
+ }
80
+ mkdirSync(dirname(target), { recursive: true });
81
+ writeFileSync(target, content, 'utf8');
82
+ result.written.push(target);
83
+ }
84
+ /**
85
+ * Copy the whole SKILL.md tree (SKILL.md + assets/) into `destDir`, file by file, so the
86
+ * idempotency / no-clobber guard applies per-file. Used for claude + codex (verbatim copy).
87
+ */
88
+ function copySkillTree(srcDir, destDir, force, result) {
89
+ for (const entry of readdirSync(srcDir, { withFileTypes: true })) {
90
+ const src = join(srcDir, entry.name);
91
+ const dest = join(destDir, entry.name);
92
+ if (entry.isDirectory()) {
93
+ copySkillTree(src, dest, force, result);
94
+ }
95
+ else if (entry.isFile()) {
96
+ writeGuarded(dest, readFileSync(src, 'utf8'), force, result);
97
+ }
98
+ }
99
+ }
100
+ const AGENTS_POINTER_HEADER = '## Skills';
101
+ const AGENTS_POINTER_LINE = `- **present-decision** — present human decisions at the level of the stakes. ` +
102
+ `Entry: \`~/.codex/skills/present-decision/SKILL.md\`.`;
103
+ /**
104
+ * Add a BOUNDED pointer line to the repo's `AGENTS.md` (the canonical entry) under a "Skills"
105
+ * section — only when AGENTS.md already exists (existing repo methods win; we never create the
106
+ * entrypoint). Idempotent: if the pointer is already present, do nothing.
107
+ */
108
+ function addAgentsPointer(repoRoot, force, result) {
109
+ const agents = join(repoRoot, 'AGENTS.md');
110
+ if (!existsSync(agents)) {
111
+ if (force) {
112
+ // Even with --force we do not fabricate a repo entrypoint the user never had; surface why.
113
+ result.skipped.push({ path: agents, reason: 'AGENTS.md absent — installer never creates a repo entrypoint' });
114
+ }
115
+ else {
116
+ result.skipped.push({ path: agents, reason: 'AGENTS.md absent (pointer skipped)' });
117
+ }
118
+ return;
119
+ }
120
+ const current = readFileSync(agents, 'utf8');
121
+ if (current.includes('present-decision')) {
122
+ result.unchanged.push(agents);
123
+ return;
124
+ }
125
+ const sep = current.endsWith('\n') ? '\n' : '\n\n';
126
+ writeFileSync(agents, `${current}${sep}${AGENTS_POINTER_HEADER}\n\n${AGENTS_POINTER_LINE}\n`, 'utf8');
127
+ result.written.push(agents);
128
+ }
129
+ /**
130
+ * Ensure `GEMINI.md` points BACK to `AGENTS.md` (don't duplicate the body). Only when AGENTS.md
131
+ * exists (the canonical entry to point at). Idempotent.
132
+ */
133
+ function ensureGeminiPointer(repoRoot, result) {
134
+ const agents = join(repoRoot, 'AGENTS.md');
135
+ if (!existsSync(agents)) {
136
+ result.skipped.push({ path: join(repoRoot, 'GEMINI.md'), reason: 'AGENTS.md absent (nothing to point at)' });
137
+ return;
138
+ }
139
+ const gemini = join(repoRoot, 'GEMINI.md');
140
+ if (existsSync(gemini) && readFileSync(gemini, 'utf8').includes('AGENTS.md')) {
141
+ result.unchanged.push(gemini);
142
+ return;
143
+ }
144
+ if (existsSync(gemini)) {
145
+ const current = readFileSync(gemini, 'utf8');
146
+ const sep = current.endsWith('\n') ? '\n' : '\n\n';
147
+ writeFileSync(gemini, `${current}${sep}See \`AGENTS.md\` for the canonical project entrypoint and skills.\n`, 'utf8');
148
+ }
149
+ else {
150
+ writeFileSync(gemini, `# Gemini\n\nSee \`AGENTS.md\` for the canonical project entrypoint and skills.\n`, 'utf8');
151
+ }
152
+ result.written.push(gemini);
153
+ }
154
+ /** Install the present-decision skill onto a single host. */
155
+ function installOne(host, scope, force, repoRoot, result) {
156
+ const srcDir = join(SKILLS_DIR, SKILL_NAME);
157
+ if (!existsSync(srcDir)) {
158
+ throw new DomainError(`skills bundle missing at ${srcDir}`);
159
+ }
160
+ const base = scope === 'user' ? userHome() : repoRoot;
161
+ if (host === 'claude' || host === 'codex') {
162
+ const destDir = join(base, `.${host}`, 'skills', SKILL_NAME);
163
+ copySkillTree(srcDir, destDir, force, result);
164
+ if (host === 'codex' && scope === 'project')
165
+ addAgentsPointer(repoRoot, force, result);
166
+ return;
167
+ }
168
+ // gemini + agy share ~/.gemini/commands/<name>.toml (agy imports the gemini command).
169
+ const skill = parseSkill(readFileSync(join(srcDir, 'SKILL.md'), 'utf8'));
170
+ const target = join(base, '.gemini', 'commands', `${SKILL_NAME}.toml`);
171
+ writeGuarded(target, renderGeminiToml(skill), force, result);
172
+ if (scope === 'project')
173
+ ensureGeminiPointer(repoRoot, result);
174
+ }
175
+ /**
176
+ * `track install-skills --host <claude|codex|gemini|agy|all> [--scope user|project] [--force]`.
177
+ * `--host` may repeat or be `all` to target several hosts in one run.
178
+ */
179
+ export function cmdInstallSkills(args, io) {
180
+ // Hand-parse so `--host` can repeat (the shared parseFlags keeps only the last value).
181
+ const hosts = [];
182
+ let scope;
183
+ let force = false;
184
+ for (let i = 0; i < args.length; i++) {
185
+ const a = args[i];
186
+ if (a === '--host') {
187
+ const v = args[++i];
188
+ if (v !== undefined)
189
+ hosts.push(v);
190
+ }
191
+ else if (a === '--scope') {
192
+ scope = args[++i];
193
+ }
194
+ else if (a === '--force') {
195
+ force = true;
196
+ }
197
+ }
198
+ if (hosts.length === 0) {
199
+ io.err(`track install-skills: --host <${HOSTS.join('|')}|all> is required\n`);
200
+ return 2;
201
+ }
202
+ // Expand `all`, de-dup, validate.
203
+ const expanded = hosts.flatMap((h) => (h === 'all' ? [...HOSTS] : [h]));
204
+ const targets = [];
205
+ for (const h of expanded) {
206
+ if (!HOSTS.includes(h)) {
207
+ io.err(`track install-skills: unknown --host "${h}". Supported: ${HOSTS.join(', ')}, all.\n`);
208
+ return 2;
209
+ }
210
+ if (!targets.includes(h))
211
+ targets.push(h);
212
+ }
213
+ const resolvedScope = (scope ?? 'user');
214
+ if (!SCOPES.includes(resolvedScope)) {
215
+ io.err(`track install-skills: --scope must be one of: ${SCOPES.join('|')}\n`);
216
+ return 2;
217
+ }
218
+ const result = { written: [], skipped: [], unchanged: [] };
219
+ try {
220
+ for (const host of targets) {
221
+ installOne(host, resolvedScope, force, io.cwd, result);
222
+ }
223
+ }
224
+ catch (error) {
225
+ io.err(`track install-skills: ${error instanceof Error ? error.message : String(error)}\n`);
226
+ return 1;
227
+ }
228
+ // Summary of what was written / skipped / left unchanged.
229
+ for (const p of result.written)
230
+ io.out(`wrote ${p}\n`);
231
+ for (const s of result.skipped)
232
+ io.out(`skipped ${s.path} (${s.reason})\n`);
233
+ if (result.written.length === 0 && result.skipped.length === 0) {
234
+ io.out(`no-op: ${targets.join(', ')} already up-to-date (${result.unchanged.length} file(s) unchanged)\n`);
235
+ }
236
+ else {
237
+ io.out(`install-skills: ${result.written.length} written, ${result.skipped.length} skipped, ` +
238
+ `${result.unchanged.length} unchanged (host: ${targets.join(', ')}, scope: ${resolvedScope})\n`);
239
+ }
240
+ // A skipped differing file is a graceful, expected outcome (rc=0) — the user is told to pass --force.
241
+ return 0;
242
+ }
243
+ //# sourceMappingURL=install-skills.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install-skills.js","sourceRoot":"","sources":["../../src/cli/install-skills.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sentropic/track",
3
- "version": "0.10.4",
3
+ "version": "0.10.6",
4
4
  "description": "Typed product-backlog and spec/plan/UAT system of record for the sentropic ecosystem (record-only MVP).",
5
5
  "license": "MIT",
6
6
  "author": "Fabien Antoine",
@@ -37,7 +37,8 @@
37
37
  "./read": "./dist/read/index.js"
38
38
  },
39
39
  "files": [
40
- "dist"
40
+ "dist",
41
+ "skills"
41
42
  ],
42
43
  "scripts": {
43
44
  "build": "tsc -p tsconfig.build.json",
@@ -0,0 +1,101 @@
1
+ ---
2
+ name: present-decision
3
+ description: Use when an agent must present a complex, irreversible, cross-owner, security/contract-affecting, costly, or genuinely balanced decision to a human owner — or must choose between decide-and-trace, a quick ask, and a full decision dossier. The agent presents at the level of the stakes, never sells its preferred option, and records the decision in track. This is agent→human; it is NOT h2a (h2a ATTENTION is the inter-agent presenter).
4
+ ---
5
+
6
+ # Present Decision
7
+
8
+ Present human decisions **at the level of the stakes**. Do not sell your preferred option. Do not outsource this to h2a — h2a ATTENTION/MANDATAIRE is the *inter-agent* neutral presenter in a negotiation; this skill is the agent's own *agent→human* working method.
9
+
10
+ This skill is **tool-neutral**. Where it names a capability ("your code-search tool", "your modal-ask tool", "your second-opinion agent"), use your host's equivalent — see **Per-agent mapping** at the end.
11
+
12
+ ## Step 1 — Calibrate (the trigger scorecard)
13
+
14
+ Score the decision *before* asking anything. Pick exactly one path.
15
+
16
+ **Decide + trace** — when ALL are true: local scope, reversible in ≤ one focused work block, no security/privacy/data-loss/frozen-contract/cross-owner impact, an existing repo pattern is clear, and no genuine equipoise. → Decide, state the reversible assumption out loud, keep moving. (Optionally record via track.) **Do not** stage a complaisant menu for a call you can reverse.
17
+
18
+ **Quick ask** — when exactly one owner preference is missing, there are 2–3 clear options, rollback is cheap, and no hard trigger below applies. → Use your modal-ask tool with one-sentence impact per option.
19
+
20
+ **Full dossier** — when ANY hard trigger applies:
21
+ - irreversible, or rollback > one focused work block
22
+ - public / frozen contract; event / read / write schema
23
+ - auth / security / privacy / IAM
24
+ - migration / data retention
25
+ - cross-repo / cross-owner / cross-agent
26
+ - meaningful cost / timeline / workpackage impact; high blast radius
27
+ - strong reviewer disagreement; genuine equipoise
28
+ - unknown owner validation criteria that could change the outcome
29
+ - the owner asks for validation at stake level
30
+
31
+ Two *medium* triggers (moderate cost, partial reversibility, one repo but a shared module, mild reviewer disagreement) also mean **dossier**. When in doubt, escalate the path, not the ceremony — a dossier can be short, but it must be honest.
32
+
33
+ ## Step 2 — Gather inputs (full-dossier path)
34
+
35
+ 1. **Local context first.** User request; repo entrypoints (`AGENTS.md`, then the host-specific pointer); applicable repo rules; existing track state when `.track/` exists; and **`track report --wp`** (fait / à-faire %·WP / attendus) when track is available. Use your code-search tool to ground claims in the actual code, not memory.
36
+ 2. **The double-instruction (standing rule).** For a complex *design* decision, get **independent Codex + Opus passes** via your second-opinion tool before recommending. **Synthesize — do not blend away disagreements.** If a hard-trigger decision lacks the second pass, mark the dossier **Incomplete** and ask whether to wait or proceed provisionally; only reversible prep may continue meanwhile.
37
+ 3. **Owner criteria.** Seed from `assets/owner-criteria.template.md`; source the live criteria from the request, repo rules, prior owner decisions, existing track decisions/dossiers, and the `track report --wp` attendus.
38
+
39
+ ## Step 3 — Build the 8-section dossier
40
+
41
+ Use `assets/dossier-template.md`. In order, no ornamental sections:
42
+
43
+ 1. **Decision asked** — one sentence, option IDs, exact scope.
44
+ 2. **Context** — facts, assumptions, and unknowns kept separate.
45
+ 3. **Stakes** — why this is dossier-level; affected repos / WPs / contracts / users.
46
+ 4. **Options** — table: `id · choice · strongest case FOR · strongest case AGAINST · cost · reversibility · what would make it win`. One row per option, including rejected ones.
47
+ 5. **Recommendation + rationale** — one recommended option (or "defer"), with the decisive judgment.
48
+ 6. **Reversibility / cost** — rollback path, sunk cost, migration / cleanup cost, time estimate.
49
+ 7. **Attendus** (the human's validation criteria) — checklist `criterion · source · covered by · gap`.
50
+ 8. **What I need from you** — the smallest valid decision or the one missing criterion.
51
+
52
+ ## Step 4 — SELF-AUDIT GATE (loop before presenting)
53
+
54
+ Run `assets/self-audit.md` as a checklist. **Do not present a dossier as complete until every item passes.** If any item fails, fix the dossier and re-run the gate — loop, don't ship.
55
+
56
+ - **FACT / JUDGMENT tags** — every load-bearing claim is tagged `[FACT]` (verifiable, with a source) or `[JUDGMENT]` (your read). No untagged assertions.
57
+ - **Count-symmetry on pros** — each option has roughly as many genuine "case FOR" points as the others; you have not starved alternatives to flatter your pick. Steelman every option, including rejected ones.
58
+ - **Strongest case AGAINST my recommendation** — a required, non-empty section. Make it the best version, not a strawman.
59
+ - **What would overturn it** — what would have to be true for the owner to reject your recommendation.
60
+ - **Pre-mortem** — one paragraph: "six months later this failed because…".
61
+ - **Agent-interest disclosure** — name what is easiest / faster / less risky *for you, the presenter*, and flag any place the recommendation benefits you more than the owner. State the owner interest (value, integrity, risk, future optionality, cost) separately.
62
+
63
+ If any item cannot be honestly completed, label the dossier **Incomplete** and ask for the missing fact/criterion — never ask for validation of an incomplete dossier.
64
+
65
+ ## Step 5 — Present, then capture the choice
66
+
67
+ - **Decide + trace:** no question — state the assumption and proceed.
68
+ - **Quick ask:** your modal-ask tool is the right surface.
69
+ - **Full dossier:** present the dossier as **prose first**, scannable. **Then** end with ONE modal-ask whose options carry IDs (e.g. *approve recommendation / choose B / defer*) to capture the decision. **Never present a chip/option menu alone for a complex decision** — prose then a final ask, not a bare menu.
70
+
71
+ ## Step 6 — Record in track
72
+
73
+ Record when `.track/` exists or the owner approves tracking. **Never fabricate evidence.**
74
+
75
+ - Use `track decision dossier <decisionId> --context <c>` for structured dossier prep.
76
+ - After presentation/validation, append artifact evidence with **`track decision add-artifact`** — never rewrite the whole dossier just to append:
77
+ - **h2a negotiation dossier:** `--kind h2a-decision-dossier --negotiation-ref <n> --dossier-hash <h>` — only with a *real* negotiationRef + dossierHash (and real comprehension evidence recorded via the h2a/ingest seam, never minted here).
78
+ - **agent↔human text/view dossier** (before a DS renderer exists): `--kind rendered-view --view-ref <stable-id> [--source-dossier-hash <h>]`.
79
+ - **Do NOT fake `comprehension[]`.** A chat reply is validation *context*, not a signed h2a attestation. The CLI does not let you mint one — and you must not.
80
+ - **Do NOT record the bridge/relay principal as the human decider.** The attester (who comprehended) is distinct from the channel that relayed the write.
81
+
82
+ ## DON'T
83
+
84
+ - A 4-option chip menu on an irreversible / cross-repo / security / frozen-contract call (the exact mistake this skill exists to prevent).
85
+ - "Which do you prefer?" with no stakes, costs, recommendation, or attendus.
86
+ - Selling the preferred option by weakening alternatives.
87
+ - False neutrality when you should just decide a reversible choice.
88
+ - Hiding presenter convenience as owner value.
89
+ - Faking `comprehension[]`, or recording a bridge principal as the decider.
90
+ - Initializing or editing another repo, global rules, or entrypoints without explicit owner approval. When invoked in a repo, insert gracefully into that repo's existing methods and *recommend* tracking via track — never impose a global standard.
91
+
92
+ ## Per-agent mapping (tool-neutral)
93
+
94
+ | Capability | Claude | Codex | Gemini-agy |
95
+ | --- | --- | --- | --- |
96
+ | skill entrypoint | `~/.claude/skills/present-decision/SKILL.md` | `~/.codex/skills/present-decision/SKILL.md` (project entry `AGENTS.md`) | `~/.gemini/commands/present-decision.toml` (project entry `GEMINI.md`) |
97
+ | modal-ask tool | `AskUserQuestion` | a numbered prose Q/R | a numbered prose Q/R |
98
+ | code-search tool | Grep / Glob / Read | ripgrep / read | ripgrep / read |
99
+ | second-opinion tool | sub-agent / `codex` + `opus` CLIs | `opus` CLI | second-model CLI |
100
+
101
+ `AGENTS.md` is the canonical entrypoint; `CLAUDE.md` / `GEMINI.md` point back to it. Existing repo methods win on conflict.
@@ -0,0 +1,49 @@
1
+ # Decision dossier — <one-line title>
2
+
3
+ > Fill every section. Tag claims `[FACT]` (verifiable, cite source) vs `[JUDGMENT]` (your read).
4
+ > Run `self-audit.md` before presenting. Label the dossier **Incomplete** if any item can't be honestly filled.
5
+
6
+ ## 1. Decision asked
7
+ <one sentence>. Options: `A` <…>, `B` <…>, `C` <…>. Scope: <exact boundary>.
8
+
9
+ ## 2. Context
10
+ - **Facts** `[FACT]`: …
11
+ - **Assumptions**: …
12
+ - **Unknowns**: …
13
+
14
+ ## 3. Stakes
15
+ Why this is dossier-level (which hard trigger). Affected: repos / WPs / contracts / users.
16
+
17
+ ## 4. Options
18
+
19
+ | id | choice | strongest case FOR | strongest case AGAINST | cost | reversibility | what would make it win |
20
+ |----|--------|--------------------|------------------------|------|---------------|------------------------|
21
+ | A | | | | | | |
22
+ | B | | | | | | |
23
+ | C | | | | | | |
24
+
25
+ (One row per option, including rejected ones. Count-symmetry: no option starved of genuine FOR points.)
26
+
27
+ ## 5. Recommendation + rationale
28
+ **Recommend: <id | defer>.** Decisive judgment `[JUDGMENT]`: …
29
+
30
+ ## 6. Reversibility / cost
31
+ Rollback path · sunk cost · migration / cleanup cost · time estimate.
32
+
33
+ ## 7. Attendus (the owner's validation criteria)
34
+
35
+ | criterion | source | covered by | gap |
36
+ |-----------|--------|------------|-----|
37
+ | | | | |
38
+
39
+ ## 8. What I need from you
40
+ The smallest valid decision, or the one missing criterion.
41
+
42
+ ---
43
+
44
+ ### Anti-bias appendix (from the self-audit gate)
45
+ - **Strongest case AGAINST my recommendation:** …
46
+ - **What would overturn it:** …
47
+ - **Pre-mortem** ("six months later this failed because…"): …
48
+ - **Agent interest** (easiest/faster/less risky for me): … — **where it diverges from owner value:** …
49
+ - **Owner interest** (value · integrity · risk · future optionality · cost): …
@@ -0,0 +1,19 @@
1
+ # Owner validation criteria — seed checklist
2
+
3
+ > Per-decision, not a global standard. Source the live criteria from the request, repo rules,
4
+ > prior owner decisions, existing track decisions/dossiers, and `track report --wp` attendus.
5
+ > Persist per decision/dossier; never edit repo rules unless the owner explicitly asks.
6
+
7
+ | criterion | source | covered by | gap |
8
+ |-----------|--------|------------|-----|
9
+ | **Reversibility** — is the change reversible, and is the rollback path stated? | standing rule | | |
10
+ | **Cross-repo owners** — are all affected repos / owners identified and consulted? | standing rule | | |
11
+ | **UAT before merge** — are the user-acceptance tests defined and green *before* merge? | standing rule | | |
12
+ | **Language** — discussion in FR; artifacts (code, SKILL.md, commits) in EN. | standing rule (FR-conv / EN-artifacts) | | |
13
+ | <decision-specific criterion> | | | |
14
+
15
+ ## How to use
16
+ 1. Copy this table into the dossier's **§7 Attendus**.
17
+ 2. Drop seed rows that don't apply; add decision-specific rows.
18
+ 3. Fill `covered by` from the dossier; any non-empty `gap` blocks "complete".
19
+ 4. If criteria are genuinely uncertain, ask "what am I missing?" — otherwise ask for the concrete decision.
@@ -0,0 +1,24 @@
1
+ # SELF-AUDIT GATE — run before presenting any full dossier
2
+
3
+ Loop: run the checklist → if any item fails, FIX the dossier → re-run. Do not present until every box is checked.
4
+ If an item cannot be honestly completed, label the dossier **Incomplete** and ask for the missing fact/criterion — never ask for validation of an incomplete dossier.
5
+
6
+ ## Checklist
7
+
8
+ - [ ] **FACT / JUDGMENT tags** — every load-bearing claim is tagged `[FACT]` (verifiable, source cited) or `[JUDGMENT]` (my read). No untagged assertions.
9
+ - [ ] **Count-symmetry on pros** — each option (incl. rejected) has roughly as many genuine "case FOR" points as the others. I have not starved alternatives to flatter my pick.
10
+ - [ ] **Strongest case AGAINST my recommendation** — present, non-empty, and the *best* version (not a strawman).
11
+ - [ ] **What would overturn it** — what would have to be true for the owner to reject my recommendation.
12
+ - [ ] **Pre-mortem** — one paragraph: "six months later this failed because…".
13
+ - [ ] **Agent-interest disclosure** — I named what is easiest / faster / less risky *for me, the presenter*, and flagged any place the recommendation benefits me more than the owner.
14
+ - [ ] **Owner interest stated separately** — value · integrity · risk · future optionality · cost.
15
+ - [ ] **Attendus covered** — every owner criterion has a `covered by`; no open `gap` (or the gap is the explicit decision asked).
16
+ - [ ] **Double-instruction** — for a complex design decision, independent Codex + Opus passes were obtained and synthesized (disagreements surfaced, not blended away). If absent on a hard-trigger call: dossier marked **Incomplete**.
17
+ - [ ] **No fabricated evidence** — no faked `comprehension[]`; no bridge principal recorded as the decider.
18
+
19
+ ## Red flags — STOP and rebuild the dossier
20
+ - The "case AGAINST" reads weaker than the "case FOR" for the same option.
21
+ - One option has visibly fewer FOR points and I can't justify why.
22
+ - A claim I'm leaning on has no source and isn't tagged `[JUDGMENT]`.
23
+ - The recommendation happens to be the cheapest path *for me* and I haven't said so.
24
+ - I'm about to present a chip/option menu with no prose, stakes, or attendus.