@tiangong-ai/cli 0.0.33 → 0.0.35

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.
Files changed (43) hide show
  1. package/AGENTS.md +9 -2
  2. package/README.md +84 -2
  3. package/dist/research/commands.js +58 -1
  4. package/dist/research/commands.js.map +1 -1
  5. package/dist/research/orchestration.js +366 -9
  6. package/dist/research/orchestration.js.map +1 -1
  7. package/dist/research/workspace/constants.d.ts +1 -0
  8. package/dist/research/workspace/constants.js +4 -2
  9. package/dist/research/workspace/constants.js.map +1 -1
  10. package/dist/research/workspace/context.js +106 -11
  11. package/dist/research/workspace/context.js.map +1 -1
  12. package/dist/research/workspace/input-plan.js +27 -1
  13. package/dist/research/workspace/input-plan.js.map +1 -1
  14. package/dist/research/workspace/projects.d.ts +6 -3
  15. package/dist/research/workspace/projects.js +21 -2
  16. package/dist/research/workspace/projects.js.map +1 -1
  17. package/dist/research/workspace/publication-workflow.d.ts +146 -0
  18. package/dist/research/workspace/publication-workflow.js +992 -0
  19. package/dist/research/workspace/publication-workflow.js.map +1 -0
  20. package/dist/research/workspace/publication.d.ts +110 -0
  21. package/dist/research/workspace/publication.js +246 -0
  22. package/dist/research/workspace/publication.js.map +1 -0
  23. package/dist/research/workspace/research-policy-wizard.d.ts +40 -0
  24. package/dist/research/workspace/research-policy-wizard.js +167 -0
  25. package/dist/research/workspace/research-policy-wizard.js.map +1 -0
  26. package/dist/research/workspace/research-policy.d.ts +70 -0
  27. package/dist/research/workspace/research-policy.js +886 -0
  28. package/dist/research/workspace/research-policy.js.map +1 -0
  29. package/dist/research/workspace/runtime.d.ts +17 -0
  30. package/dist/research/workspace/runtime.js +81 -2
  31. package/dist/research/workspace/runtime.js.map +1 -1
  32. package/dist/research/workspace/setup-catalog.js +5 -5
  33. package/dist/research/workspace/setup-invocation.d.ts +11 -0
  34. package/dist/research/workspace/setup-invocation.js +34 -0
  35. package/dist/research/workspace/setup-invocation.js.map +1 -0
  36. package/dist/research/workspace/setup-wizard.d.ts +18 -1
  37. package/dist/research/workspace/setup-wizard.js +1 -1
  38. package/dist/research/workspace/setup-wizard.js.map +1 -1
  39. package/dist/research/workspace/setup.d.ts +52 -6
  40. package/dist/research/workspace/setup.js +598 -22
  41. package/dist/research/workspace/setup.js.map +1 -1
  42. package/dist/research/workspace/types.d.ts +52 -0
  43. package/package.json +6 -3
package/AGENTS.md CHANGED
@@ -15,8 +15,8 @@ checkPaths:
15
15
  - .docpact/config.yaml
16
16
  - docs/agents/**
17
17
  - src/**
18
- lastReviewedAt: 2026-08-11
19
- lastReviewedCommit: 2ce7ad7cd36c1aeba577bc72e4095ed3a81debd6
18
+ lastReviewedAt: 2026-08-13
19
+ lastReviewedCommit: df263405bccb21cd5838d92d82dccf80ca01acb1
20
20
  ---
21
21
 
22
22
  # Tiangong AI CLI Contract
@@ -47,6 +47,8 @@ This repository owns the Tiangong AI command-line interface.
47
47
  - `tiangong-ai kb status`
48
48
  - `tiangong-ai research context`
49
49
  - `tiangong-ai research setup`
50
+ - `tiangong-ai research policy`
51
+ - `tiangong-ai research publication`
50
52
  - `tiangong-ai research workspace`
51
53
  - `tiangong-ai research capability`
52
54
  - `tiangong-ai research project`
@@ -60,6 +62,7 @@ This repository owns the Tiangong AI command-line interface.
60
62
  Run before delivery:
61
63
 
62
64
  ```bash
65
+ npm run test:clean
63
66
  npm run lint
64
67
  npm run build
65
68
  npm test
@@ -68,6 +71,10 @@ docpact validate-config --root . --strict
68
71
  docpact lint --root . --worktree --mode enforce
69
72
  ```
70
73
 
74
+ For Auto Research changes, `npm run test:clean` is the authoritative TDD gate.
75
+ Write the regression first, observe it fail in that clean container, then make
76
+ it pass there. Host-only results are supplemental.
77
+
71
78
  Use `npm run typecheck` for a faster TypeScript-only check.
72
79
  Use `npm run prepush:gate` when `docpact` is installed and you want the
73
80
  aggregated local quality gate.
package/README.md CHANGED
@@ -12,8 +12,8 @@ checkPaths:
12
12
  - package.json
13
13
  - bin/**
14
14
  - src/**
15
- lastReviewedAt: 2026-08-10
16
- lastReviewedCommit: bef62f8d48c42eaff14fa2bd7eba1be83a46a58b
15
+ lastReviewedAt: 2026-08-12
16
+ lastReviewedCommit: ac34420a63cb02898f8c38b1c1af64f0439e862f
17
17
  ---
18
18
 
19
19
  # Tiangong AI CLI
@@ -235,6 +235,16 @@ the default; global writes, network downloads, live provider checks, synthetic
235
235
  document uploads, and paid agent smokes each require their applicable
236
236
  confirmation.
237
237
 
238
+ If the full orchestrator was selected, accepted apply creates a separate
239
+ project-local `tiangong-auto-research-recovery` Skill after credentials are
240
+ stored and before source checkout. This CLI-generated, plan-bound shim can only
241
+ inspect context/status and execute the exact-version retry returned by setup; it
242
+ cannot perform research, call standalone evidence, or access credentials. A
243
+ checkout or install failure therefore remains discoverable without falling back
244
+ to a global Skill. After the full external orchestrator matches its reviewed
245
+ tree hash, setup verifies the shim byte-for-byte and removes only that generated
246
+ directory. Modified, symlinked, or ambiguous recovery bytes block cleanup.
247
+
238
248
  Production admission requires at least one locked external capability with
239
249
  `brokered-network` and `discoveryScopes: ["public-internet"]`; an input plan or
240
250
  local files alone cannot represent internet coverage. The machine-readable
@@ -259,6 +269,78 @@ regular non-symlink `runtime-lock.json` exact stable CLI version. Setup and
259
269
  release CI reject a missing resolver or any stale exact CLI version in the
260
270
  orchestrator's `SKILL.md` or `references/*.md`.
261
271
 
272
+ ### Top-journal Research Policy and final publication gate
273
+
274
+ A `top-journal` project starts with a human-reviewed Markdown Policy, not with
275
+ model execution. After project-scoped setup reaches `READY`, use the guided
276
+ Wizard:
277
+
278
+ ```bash
279
+ tiangong-ai research policy wizard top-journal-paper \
280
+ --workspace /absolute/path/to/workspace
281
+ tiangong-ai research policy status top-journal-paper \
282
+ --workspace /absolute/path/to/workspace --json
283
+ ```
284
+
285
+ The Wizard resolves only the verified project-installed
286
+ `tiangong-auto-research` tree. It copies a baseline plus one article type,
287
+ field, journal class, project brief, and four reviewer rubrics. Generic defaults
288
+ are clearly reported and require a separate acknowledgement. An exact-journal
289
+ Policy additionally requires a current official HTTPS guideline URL, retrieval
290
+ date, and substantive human content for all journal-specific sections. Approval
291
+ binds the manifest and every document by SHA-256; edits, manifest tampering, or
292
+ expiry block preflight and all later stages until the Policy is reviewed and
293
+ approved again.
294
+
295
+ Use the Policy project ID when admitting the research project:
296
+
297
+ ```bash
298
+ tiangong-ai research project preflight \
299
+ --question "A specific, testable research question" \
300
+ --goal top-journal --policy-project top-journal-paper \
301
+ --requirements /absolute/path/to/evidence-requirements.json \
302
+ --workspace /absolute/path/to/workspace --json
303
+ ```
304
+
305
+ The base evidence lifecycle remains
306
+ `discover -> acquire -> analyze -> synthesize -> review -> close`, authored in
307
+ the current interactive Codex or Claude Code host. After base closure, the
308
+ current native host writes a final manuscript and schema-valid publication
309
+ assessment. `research publication freeze` then content-addresses the Policy,
310
+ evidence snapshot, base outputs, manuscript, assessment, and supplements.
311
+ Exactly four fresh independent sessions review that frozen generation:
312
+ evidence, methods/reproducibility, domain/novelty, and journal-editor. A revised
313
+ manuscript invalidates prior reviews; reviewer-session reuse is rejected from
314
+ the append-only journal even if mutable cache state is removed. The raw opaque
315
+ producer/reviewer session identifiers are accepted only at the command boundary;
316
+ generation, packet, review, journal, and closure objects persist only their
317
+ SHA-256 bindings.
318
+
319
+ ```bash
320
+ tiangong-ai research schema show publication-assessment --json
321
+ tiangong-ai research publication freeze top-journal-paper \
322
+ --manuscript /absolute/path/to/final-manuscript.md \
323
+ --assessment /absolute/path/to/publication-assessment.json \
324
+ --producer-agent codex --producer-session OPAQUE_NATIVE_SESSION \
325
+ --workspace /absolute/path/to/workspace --json
326
+ tiangong-ai research publication status top-journal-paper \
327
+ --workspace /absolute/path/to/workspace --json
328
+ ```
329
+
330
+ The CLI returns a mechanically bounded ceiling:
331
+ `top-journal-candidate`, `top-journal-class-ready`, or
332
+ `target-journal-submission-ready`. Evidence and review failures can only lower
333
+ it. None of these states predicts or guarantees editorial acceptance.
334
+
335
+ `research setup status --json` reports credential persistence separately from
336
+ readiness. It also reports the effective exact-npx CLI package/version/root,
337
+ the selected project orchestrator, any temporary recovery shim, ignored global
338
+ same-name Skills, legacy wrappers that still contain an unmanaged PATH CLI
339
+ fallback, and the real failed source/immutable ref/cache state when checkout is
340
+ retryable. A direct `research search` inside a managed workspace stops before
341
+ network access and returns the same broker-vs-standalone and setup provenance;
342
+ it never converts a stored broker credential into an ambient credential.
343
+
262
344
  The default `internet-research` profile selects Brave Web Search and News
263
345
  Search. `internet-research-with-context` additionally selects the
264
346
  subscription-dependent LLM Context endpoint, while
@@ -2,8 +2,9 @@ import { runEdgeSearch } from "../edge-search.js";
2
2
  import { CliError } from "../errors.js";
3
3
  import { readJsonInput, stringifyJson, write } from "../io.js";
4
4
  import { parseStrictArgs, strictBoolean, strictString } from "../strict-args.js";
5
- import { parseResearchSources, researchSourceConfig, resolveResearchConfig } from "./config.js";
5
+ import { parseResearchSources, researchSourceConfig, resolveResearchConfig, } from "./config.js";
6
6
  import { researchOrchestrationHelp, runResearchOrchestrationCommand } from "./orchestration.js";
7
+ import { inspectResearchContext } from "./workspace/context.js";
7
8
  const RESEARCH_SEARCH_OPTIONS = {
8
9
  help: "boolean",
9
10
  json: "boolean",
@@ -88,6 +89,7 @@ async function runResearchSearchCommand(argv, io) {
88
89
  }
89
90
  const sourceIds = parseResearchSources(strictString(args, "sources"));
90
91
  const config = resolveResearchConfig(args, io.env);
92
+ await assertStandaloneSearchContext(io.env, sourceIds, config);
91
93
  const inputPath = strictString(args, "input");
92
94
  const body = researchRequestBody(args);
93
95
  const result = await runEdgeSearch({
@@ -101,6 +103,61 @@ async function runResearchSearchCommand(argv, io) {
101
103
  writeSearchResult(io, result, strictBoolean(args, "json"));
102
104
  return 0;
103
105
  }
106
+ async function assertStandaloneSearchContext(environment, sourceIds, config) {
107
+ const context = await inspectResearchContext(process.cwd());
108
+ if (context.role !== "setup" && context.role !== "workspace")
109
+ return;
110
+ const setup = context.setup;
111
+ const ready = setup?.status === "ready";
112
+ const blocked = setup?.status === "blocked";
113
+ const setupStatus = context.root
114
+ ? await import("./workspace/setup.js")
115
+ .then(({ inspectResearchSetupStatus }) => inspectResearchSetupStatus(context.root, environment))
116
+ .catch(() => null)
117
+ : null;
118
+ const configuredBrokerIds = setupStatus?.credentialReadiness.configuredIds ?? [];
119
+ const standaloneConfiguredSources = sourceIds.filter((sourceId) => config.sources[sourceId].apiKey.length > 0);
120
+ const standaloneCredential = standaloneConfiguredSources.length === 0
121
+ ? "absent"
122
+ : standaloneConfiguredSources.length === sourceIds.length
123
+ ? "present"
124
+ : "partial";
125
+ throw new CliError(ready
126
+ ? "Direct research search is disabled inside an Auto Research workspace."
127
+ : blocked
128
+ ? "Broker credentials may be stored, but Auto Research setup is blocked; standalone search cannot consume broker credentials."
129
+ : "Auto Research setup is incomplete; standalone search will not bypass it.", {
130
+ code: ready
131
+ ? "AUTO_RESEARCH_BROKER_REQUIRED"
132
+ : blocked
133
+ ? "AUTO_RESEARCH_SETUP_BLOCKED"
134
+ : "AUTO_RESEARCH_SETUP_INCOMPLETE",
135
+ exitCode: 3,
136
+ details: {
137
+ executionMode: "managed-workspace",
138
+ requestedExecutionMode: "standalone",
139
+ recommendedExecutionMode: "managed-workspace",
140
+ credentialScope: "broker",
141
+ brokerCredentialStore: configuredBrokerIds.length > 0 ? "present" : "absent",
142
+ brokerConfiguredCredentialIds: configuredBrokerIds,
143
+ standaloneCredential,
144
+ standaloneConfiguredSources,
145
+ networkAttempted: false,
146
+ workspace: context.root,
147
+ setupStatus: setup?.status ?? "missing",
148
+ failedStep: setup?.blocker?.step ?? setup?.currentStep ?? null,
149
+ setupBlocker: setup?.blocker ?? null,
150
+ effectiveCli: setupStatus?.provenance.effectiveCli ?? setup?.runtime ?? null,
151
+ effectiveSkill: setupStatus?.provenance.selectedOrchestrator ?? null,
152
+ recoveryShims: setupStatus?.provenance.recoveryShims ?? [],
153
+ ambientCli: setupStatus?.provenance.ambientCli ?? null,
154
+ ambientSkillConflicts: setupStatus?.provenance.ambientSkillConflicts ?? [],
155
+ minimumAction: setup?.next?.retryCommand ??
156
+ "Use the project evidence broker through tiangong-auto-research; do not provide ambient credentials.",
157
+ retryCommand: setup?.next?.retryCommand ?? null,
158
+ },
159
+ });
160
+ }
104
161
  function researchRequestBody(args) {
105
162
  const inputPath = strictString(args, "input");
106
163
  if (inputPath) {
@@ -1 +1 @@
1
- {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/research/commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/research/commands.ts"],"names":[],"mappings":"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"}