@tiangong-ai/cli 0.0.22 → 0.0.23

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 (35) hide show
  1. package/AGENTS.md +2 -2
  2. package/README.md +101 -9
  3. package/dist/cli.js +15 -3
  4. package/dist/cli.js.map +1 -1
  5. package/dist/research/orchestration.js +117 -4
  6. package/dist/research/orchestration.js.map +1 -1
  7. package/dist/research/workspace/broker.js +38 -46
  8. package/dist/research/workspace/broker.js.map +1 -1
  9. package/dist/research/workspace/capabilities.d.ts +2 -0
  10. package/dist/research/workspace/capabilities.js +246 -7
  11. package/dist/research/workspace/capabilities.js.map +1 -1
  12. package/dist/research/workspace/constants.d.ts +2 -2
  13. package/dist/research/workspace/constants.js +6 -0
  14. package/dist/research/workspace/constants.js.map +1 -1
  15. package/dist/research/workspace/credentials.d.ts +19 -0
  16. package/dist/research/workspace/credentials.js +111 -0
  17. package/dist/research/workspace/credentials.js.map +1 -0
  18. package/dist/research/workspace/executor.d.ts +1 -0
  19. package/dist/research/workspace/executor.js +7 -3
  20. package/dist/research/workspace/executor.js.map +1 -1
  21. package/dist/research/workspace/external-skills.d.ts +458 -0
  22. package/dist/research/workspace/external-skills.js +1000 -0
  23. package/dist/research/workspace/external-skills.js.map +1 -0
  24. package/dist/research/workspace/preflight.d.ts +2 -0
  25. package/dist/research/workspace/preflight.js +11 -4
  26. package/dist/research/workspace/preflight.js.map +1 -1
  27. package/dist/research/workspace/runtime.js +63 -20
  28. package/dist/research/workspace/runtime.js.map +1 -1
  29. package/dist/research/workspace/storage.js +37 -2
  30. package/dist/research/workspace/storage.js.map +1 -1
  31. package/dist/research/workspace/types.d.ts +29 -0
  32. package/dist/research/workspace/workspace.d.ts +2 -0
  33. package/dist/research/workspace/workspace.js +98 -45
  34. package/dist/research/workspace/workspace.js.map +1 -1
  35. package/package.json +4 -4
@@ -1,18 +1,21 @@
1
1
  import { randomUUID } from "node:crypto";
2
- import { lstat, mkdir, readFile, readdir, rm, stat, writeFile } from "node:fs/promises";
2
+ import { lstat, mkdir, readdir, rm, writeFile } from "node:fs/promises";
3
3
  import { basename, isAbsolute, join } from "node:path";
4
4
  import { CliError } from "../../errors.js";
5
- import { declaredCredentialIds, verifyCapabilities } from "./capabilities.js";
5
+ import { loadCapabilityDeclarations, verifyCapabilities } from "./capabilities.js";
6
6
  import { packageVersion, RESEARCH_PACKAGE_NAME, RESEARCH_PROTOCOL_VERSION } from "./constants.js";
7
7
  import { inspectResearchContext, isWorkspaceMarker } from "./context.js";
8
+ import { inspectCapabilityCredentialEnvironment } from "./credentials.js";
8
9
  import { appendJournalEvent, verifyJournal } from "./journal.js";
9
10
  import { loadProjectEvidenceReceipts } from "./evidence.js";
10
11
  import { executeAgent } from "./executor.js";
12
+ import { doctorExternalCapabilities, hasPublicInternetCapability } from "./external-skills.js";
11
13
  import { parseStructuredStageOutput, schemaForStage } from "./schemas.js";
14
+ import { sanitizeResearchText } from "./sanitization.js";
12
15
  import { acquireFileLock, canonicalJson, ensureDirectory, isObject, pathExists, readJsonFile, requireAbsolutePath, sha256File, sha256Text, workspacePaths, writeJsonAtomic, } from "./storage.js";
13
16
  const DOCTOR_ATTESTATION_TTL_MS = 24 * 60 * 60 * 1000;
14
17
  const DEFAULT_BUDGET = {
15
- maxTokens: 320_000,
18
+ maxTokens: 500_000,
16
19
  maxCostUsd: 60,
17
20
  maxWallSeconds: 72 * 60 * 60,
18
21
  maxFilesPerPackage: 20,
@@ -20,7 +23,7 @@ const DEFAULT_BUDGET = {
20
23
  maxAttemptsPerPackage: 3,
21
24
  confirmationCostUsd: 10,
22
25
  packageMaxTokens: {
23
- discover: 80_000,
26
+ discover: 200_000,
24
27
  analyze: 55_000,
25
28
  synthesize: 60_000,
26
29
  review: 120_000,
@@ -174,20 +177,62 @@ export async function doctorResearchWorkspace(inputPath, options = {}) {
174
177
  const result = await verifyJournal(paths.journal);
175
178
  return { value: result, detail: `${result.events} event(s), head=${result.head.slice(0, 12)}` };
176
179
  });
177
- const credentialIds = await checked(checks, "capability-policy", async () => {
180
+ const capabilityDeclarations = await checked(checks, "capability-policy", async () => {
178
181
  const result = await verifyCapabilities(workspace);
179
182
  if (result.status !== "verified") {
180
183
  throw new Error(result.errors.join("; ") || "capability verification failed");
181
184
  }
185
+ const value = await loadCapabilityDeclarations(workspace);
182
186
  return {
183
- value: await declaredCredentialIds(workspace),
187
+ value,
184
188
  detail: `${result.checked} locked capability declaration(s)`,
185
189
  };
186
190
  });
187
191
  await checked(checks, "credential-environment", async () => {
188
- const result = await inspectCredentialEnvironment(paths.env, credentialIds ?? new Set());
189
- return { value: result, detail: result };
192
+ const result = await inspectCapabilityCredentialEnvironment(workspace, capabilityDeclarations?.capabilities ?? []);
193
+ if (result.missingIds.length > 0) {
194
+ throw new Error(`missing declared credential values: ${result.missingIds.join(", ")}`);
195
+ }
196
+ return { value: result, detail: result.detail };
190
197
  });
198
+ if (config?.mode === "production-research" && capabilityDeclarations) {
199
+ checks.push({
200
+ id: "public-internet-capability",
201
+ status: hasPublicInternetCapability(capabilityDeclarations) ? "pass" : "fail",
202
+ detail: hasPublicInternetCapability(capabilityDeclarations)
203
+ ? "At least one locked brokered capability declares discoveryScopes=[public-internet]."
204
+ : "Production research requires an external public-internet capability; local evidence alone is not sufficient.",
205
+ });
206
+ }
207
+ const externalCapabilityDoctor = capabilityDeclarations
208
+ ? await checked(checks, "external-skill-readiness", async () => {
209
+ const value = await doctorExternalCapabilities(workspace, {
210
+ live: options.capabilitySmoke === true,
211
+ ...(options.capabilityFetcher ? { fetcher: options.capabilityFetcher } : {}),
212
+ });
213
+ if (value.status !== "ready") {
214
+ throw new Error(value.failures.join("; ") || "external capability readiness failed");
215
+ }
216
+ return {
217
+ value,
218
+ detail: `${value.capabilities.length} capability declaration(s); mode=${value.mode}`,
219
+ };
220
+ })
221
+ : undefined;
222
+ const hasNetworkCapabilities = Boolean(capabilityDeclarations?.capabilities.some((capability) => capability.permissions.includes("brokered-network")));
223
+ if (hasNetworkCapabilities) {
224
+ checks.push({
225
+ id: "capability-live-smoke",
226
+ status: options.capabilitySmoke && externalCapabilityDoctor?.status === "ready"
227
+ ? "pass"
228
+ : config?.mode === "production-research"
229
+ ? "fail"
230
+ : "warn",
231
+ detail: options.capabilitySmoke && externalCapabilityDoctor?.status === "ready"
232
+ ? "All configured brokered capability health checks passed."
233
+ : "Live provider checks were not completed; rerun doctor with --capability-smoke.",
234
+ });
235
+ }
191
236
  await checked(checks, "project-state", async () => {
192
237
  const projects = await readProjectStates(paths.projects);
193
238
  return { value: projects, detail: `${projects.length} project(s)` };
@@ -267,6 +312,18 @@ export async function doctorResearchWorkspace(inputPath, options = {}) {
267
312
  smokeUsage: smokeResults
268
313
  .map((result) => result.usage)
269
314
  .sort((left, right) => left.agent.localeCompare(right.agent)),
315
+ capabilitySmoke: options.capabilitySmoke && externalCapabilityDoctor?.status === "ready"
316
+ ? externalCapabilityDoctor.capabilities
317
+ .filter((capability) => capability.health.status !== "not-applicable")
318
+ .map((capability) => ({
319
+ id: capability.id,
320
+ status: "pass",
321
+ code: capability.health.code,
322
+ host: capability.health.host,
323
+ targetSha256: capability.health.targetSha256,
324
+ httpStatus: capability.health.httpStatus,
325
+ }))
326
+ : [],
270
327
  }
271
328
  : undefined;
272
329
  checks.push({
@@ -395,6 +452,7 @@ async function persistDoctorAttestation(root, expectedConfig, marker, smoke) {
395
452
  capabilityLockSha256: await sha256File(paths.capabilityLock),
396
453
  doctorSchemaSha256: sha256Text(canonicalJson(schemaForStage("doctor"))),
397
454
  runtimes: smoke.runtimes,
455
+ capabilitySmoke: smoke.capabilitySmoke,
398
456
  smokeUsage: smoke.smokeUsage,
399
457
  };
400
458
  const value = {
@@ -407,6 +465,7 @@ async function persistDoctorAttestation(root, expectedConfig, marker, smoke) {
407
465
  checkedAt: value.checkedAt,
408
466
  expiresAt: value.expiresAt,
409
467
  runtimes: value.runtimes,
468
+ capabilitySmoke: value.capabilitySmoke,
410
469
  smokeUsage: value.smokeUsage,
411
470
  });
412
471
  return value;
@@ -428,6 +487,7 @@ export async function verifyDoctorAttestation(root) {
428
487
  errors.push("attestation hash mismatch");
429
488
  const marker = await loadWorkspaceMarker(root);
430
489
  const config = await loadWorkspaceConfig(root);
490
+ const declarations = await loadCapabilityDeclarations(root);
431
491
  if (value.workspaceId !== marker.workspaceId)
432
492
  errors.push("workspace ID drifted");
433
493
  if (value.configSha256 !== sha256Text(canonicalJson(config)))
@@ -443,6 +503,16 @@ export async function verifyDoctorAttestation(root) {
443
503
  if (value.doctorSchemaSha256 !== sha256Text(canonicalJson(schemaForStage("doctor")))) {
444
504
  errors.push("doctor schema drifted");
445
505
  }
506
+ if (config.mode === "production-research") {
507
+ const expectedCapabilityIds = declarations.capabilities
508
+ .filter((capability) => capability.permissions.includes("brokered-network"))
509
+ .map((capability) => capability.id)
510
+ .sort();
511
+ const observedCapabilityIds = value.capabilitySmoke.map((row) => row.id).sort();
512
+ if (canonicalJson(expectedCapabilityIds) !== canonicalJson(observedCapabilityIds)) {
513
+ errors.push("capability smoke coverage drifted");
514
+ }
515
+ }
446
516
  if (errors.length)
447
517
  return { status: "drifted", errors, attestation: value };
448
518
  if (Date.parse(value.expiresAt) <= Date.now()) {
@@ -469,6 +539,10 @@ function isDoctorAttestation(value) {
469
539
  hashFields.some((hash) => typeof hash !== "string" || !/^[0-9a-f]{64}$/.test(hash)) ||
470
540
  !Array.isArray(value.runtimes) ||
471
541
  value.runtimes.length !== 2 ||
542
+ !Array.isArray(value.capabilitySmoke) ||
543
+ !value.capabilitySmoke.every(isCapabilitySmokeRow) ||
544
+ new Set(value.capabilitySmoke.map((row) => (isObject(row) ? row.id : null))).size !==
545
+ value.capabilitySmoke.length ||
472
546
  !Array.isArray(value.smokeUsage) ||
473
547
  value.smokeUsage.length !== 2) {
474
548
  return false;
@@ -486,6 +560,21 @@ function isDoctorAttestation(value) {
486
560
  typeof runtime.platform === "string" &&
487
561
  typeof runtime.architecture === "string");
488
562
  }
563
+ function isCapabilitySmokeRow(value) {
564
+ return (isObject(value) &&
565
+ typeof value.id === "string" &&
566
+ /^[a-z][a-z0-9]*(?:[.-][a-z0-9]+)+$/.test(value.id) &&
567
+ (value.status === "pass" || value.status === "not-applicable") &&
568
+ typeof value.code === "string" &&
569
+ (value.host === null || typeof value.host === "string") &&
570
+ (value.targetSha256 === null ||
571
+ (typeof value.targetSha256 === "string" && /^[0-9a-f]{64}$/.test(value.targetSha256))) &&
572
+ (value.httpStatus === null ||
573
+ (typeof value.httpStatus === "number" &&
574
+ Number.isInteger(value.httpStatus) &&
575
+ value.httpStatus >= 100 &&
576
+ value.httpStatus <= 599)));
577
+ }
489
578
  export async function withWorkspaceLock(root, operation, callback) {
490
579
  await requireCurrentRuntimeLock(root);
491
580
  const paths = workspacePaths(root);
@@ -523,39 +612,6 @@ export async function requireCurrentRuntimeLock(root, knownMarker) {
523
612
  }
524
613
  return lock;
525
614
  }
526
- async function inspectCredentialEnvironment(path, declaredIds) {
527
- if (!(await pathExists(path)))
528
- return "not configured; no credentials loaded";
529
- const info = await stat(path);
530
- if (process.platform !== "win32" && (info.mode & 0o077) !== 0) {
531
- throw new Error("credential environment must have owner-only permissions");
532
- }
533
- const lines = (await readFile(path, "utf8")).split(/\r?\n/);
534
- let found = false;
535
- for (const sourceLine of lines) {
536
- const line = sourceLine.trim();
537
- if (!line || line.startsWith("#"))
538
- continue;
539
- const equals = line.indexOf("=");
540
- if (equals < 1)
541
- throw new Error("credential environment contains a malformed line");
542
- const key = line.slice(0, equals).trim();
543
- if (key !== "TIANGONG_RESEARCH_CAPABILITY_CREDENTIALS_JSON" || found) {
544
- throw new Error(`credential environment contains an unsupported key: ${key}`);
545
- }
546
- const raw = line.slice(equals + 1).trim();
547
- const value = JSON.parse(raw || "{}");
548
- if (!isObject(value) ||
549
- Object.entries(value).some(([credentialId, credentialValue]) => !isLogicalCredentialId(credentialId) ||
550
- !declaredIds.has(credentialId) ||
551
- typeof credentialValue !== "string" ||
552
- Buffer.byteLength(credentialValue, "utf8") < 8)) {
553
- throw new Error("credential map must contain logical IDs and non-trivial string values");
554
- }
555
- found = true;
556
- }
557
- return found ? "configured with owner-only permissions" : "configured without credentials";
558
- }
559
615
  async function readProjectStates(projectsPath) {
560
616
  const entries = await readdir(projectsPath, { withFileTypes: true });
561
617
  const states = [];
@@ -672,7 +728,7 @@ async function checked(checks, id, callback) {
672
728
  checks.push({
673
729
  id,
674
730
  status: "fail",
675
- detail: error instanceof Error ? error.message : String(error),
731
+ detail: sanitizeResearchText(error instanceof Error ? error.message : String(error)),
676
732
  });
677
733
  return undefined;
678
734
  }
@@ -696,7 +752,4 @@ function positiveNumber(value) {
696
752
  function nonNegativeNumber(value) {
697
753
  return typeof value === "number" && Number.isFinite(value) && value >= 0;
698
754
  }
699
- function isLogicalCredentialId(value) {
700
- return /^[a-z][a-z0-9]*(?:[.-][a-z0-9]+)+$/.test(value);
701
- }
702
755
  //# sourceMappingURL=workspace.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../../src/research/workspace/workspace.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../../src/research/workspace/workspace.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tiangong-ai/cli",
3
- "version": "0.0.22",
3
+ "version": "0.0.23",
4
4
  "description": "Tiangong AI command-line interface.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -50,15 +50,15 @@
50
50
  "license": "MIT",
51
51
  "devDependencies": {
52
52
  "@types/node": "^24.12.2",
53
- "c8": "^11.0.0",
53
+ "c8": "^12.0.0",
54
54
  "prettier": "^3.8.1",
55
- "tsx": "^4.21.0",
55
+ "tsx": "^4.23.11",
56
56
  "typescript": "^5.9.3"
57
57
  },
58
58
  "dependencies": {
59
59
  "@aws-sdk/client-s3": "^3.1056.0",
60
60
  "ajv": "8.20.0",
61
61
  "pdf-lib": "^1.17.1",
62
- "sharp": "^0.34.5"
62
+ "sharp": "^0.35.3"
63
63
  }
64
64
  }