@phnx-labs/agents-cli 1.21.2 → 1.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.
Files changed (102) hide show
  1. package/CHANGELOG.md +101 -0
  2. package/README.md +32 -3
  3. package/dist/bin/agents +0 -0
  4. package/dist/commands/computer-actions.d.ts +4 -0
  5. package/dist/commands/computer-actions.js +35 -0
  6. package/dist/commands/computer.js +4 -2
  7. package/dist/commands/exec.d.ts +27 -0
  8. package/dist/commands/exec.js +123 -6
  9. package/dist/commands/models.js +36 -1
  10. package/dist/commands/perf.d.ts +16 -0
  11. package/dist/commands/perf.js +11 -1
  12. package/dist/commands/projects.d.ts +11 -1
  13. package/dist/commands/projects.js +38 -4
  14. package/dist/commands/sessions-backfill.d.ts +32 -0
  15. package/dist/commands/sessions-backfill.js +186 -0
  16. package/dist/commands/sessions-picker.js +17 -2
  17. package/dist/commands/sessions.d.ts +22 -1
  18. package/dist/commands/sessions.js +331 -18
  19. package/dist/commands/teams.js +1 -1
  20. package/dist/commands/worktree.d.ts +3 -3
  21. package/dist/commands/worktree.js +35 -4
  22. package/dist/index.js +8 -0
  23. package/dist/lib/browser/service.js +13 -0
  24. package/dist/lib/computer/dispatch.d.ts +3 -1
  25. package/dist/lib/computer/dispatch.js +10 -2
  26. package/dist/lib/daemon.d.ts +5 -1
  27. package/dist/lib/daemon.js +63 -14
  28. package/dist/lib/devices/resolve-target.d.ts +6 -0
  29. package/dist/lib/devices/resolve-target.js +9 -3
  30. package/dist/lib/event-stream.d.ts +2 -0
  31. package/dist/lib/event-stream.js +3 -0
  32. package/dist/lib/events.d.ts +3 -1
  33. package/dist/lib/events.js +4 -2
  34. package/dist/lib/exec.js +39 -8
  35. package/dist/lib/git.d.ts +14 -0
  36. package/dist/lib/git.js +36 -0
  37. package/dist/lib/hooks/profile.js +1 -14
  38. package/dist/lib/hosts/dispatch.d.ts +12 -0
  39. package/dist/lib/hosts/dispatch.js +23 -6
  40. package/dist/lib/hosts/reconnect.d.ts +38 -0
  41. package/dist/lib/hosts/reconnect.js +85 -4
  42. package/dist/lib/hosts/run-target.js +14 -2
  43. package/dist/lib/menubar/MenubarHelper.app/Contents/CodeResources +0 -0
  44. package/dist/lib/menubar/MenubarHelper.app/Contents/MacOS/MenubarHelper +0 -0
  45. package/dist/lib/model-tiers.d.ts +54 -0
  46. package/dist/lib/model-tiers.js +229 -0
  47. package/dist/lib/models.d.ts +3 -0
  48. package/dist/lib/models.js +44 -7
  49. package/dist/lib/percentile.d.ts +12 -0
  50. package/dist/lib/percentile.js +24 -0
  51. package/dist/lib/perf/db.d.ts +1 -2
  52. package/dist/lib/perf/db.js +2 -14
  53. package/dist/lib/plugins.js +12 -1
  54. package/dist/lib/pricing/prices.json +16 -1
  55. package/dist/lib/project-focus.d.ts +42 -0
  56. package/dist/lib/project-focus.js +80 -0
  57. package/dist/lib/project-schedule.d.ts +75 -0
  58. package/dist/lib/project-schedule.js +110 -0
  59. package/dist/lib/redact.d.ts +2 -0
  60. package/dist/lib/redact.js +22 -0
  61. package/dist/lib/remote-agents-json.d.ts +2 -0
  62. package/dist/lib/remote-agents-json.js +3 -3
  63. package/dist/lib/resources.d.ts +16 -0
  64. package/dist/lib/resources.js +25 -14
  65. package/dist/lib/rotate.d.ts +84 -1
  66. package/dist/lib/rotate.js +155 -5
  67. package/dist/lib/routines.js +1 -14
  68. package/dist/lib/runner.d.ts +4 -2
  69. package/dist/lib/runner.js +21 -5
  70. package/dist/lib/secrets/Agents CLI.app/Contents/CodeResources +0 -0
  71. package/dist/lib/secrets/Agents CLI.app/Contents/MacOS/Agents CLI +0 -0
  72. package/dist/lib/session/bash-command.js +60 -9
  73. package/dist/lib/session/db.d.ts +22 -1
  74. package/dist/lib/session/db.js +516 -24
  75. package/dist/lib/session/discover.d.ts +68 -7
  76. package/dist/lib/session/discover.js +186 -84
  77. package/dist/lib/session/highlights.d.ts +24 -4
  78. package/dist/lib/session/highlights.js +52 -7
  79. package/dist/lib/session/parse.d.ts +8 -1
  80. package/dist/lib/session/parse.js +102 -35
  81. package/dist/lib/session/prompt.d.ts +19 -0
  82. package/dist/lib/session/prompt.js +43 -0
  83. package/dist/lib/session/remote-list.d.ts +71 -0
  84. package/dist/lib/session/remote-list.js +410 -2
  85. package/dist/lib/session/shell-programs.d.ts +15 -0
  86. package/dist/lib/session/shell-programs.js +359 -0
  87. package/dist/lib/session/tool-calls.d.ts +88 -0
  88. package/dist/lib/session/tool-calls.js +612 -0
  89. package/dist/lib/session/tool-index.d.ts +100 -0
  90. package/dist/lib/session/tool-index.js +773 -0
  91. package/dist/lib/session/tool-store.d.ts +15 -0
  92. package/dist/lib/session/tool-store.js +198 -0
  93. package/dist/lib/session/types.d.ts +49 -0
  94. package/dist/lib/state.d.ts +10 -1
  95. package/dist/lib/state.js +11 -2
  96. package/dist/lib/teams/remoteWorktree.d.ts +3 -4
  97. package/dist/lib/teams/remoteWorktree.js +3 -4
  98. package/dist/lib/teams/worktree.d.ts +11 -1
  99. package/dist/lib/teams/worktree.js +42 -4
  100. package/dist/lib/types.d.ts +31 -0
  101. package/dist/lib/types.js +17 -0
  102. package/package.json +3 -1
@@ -0,0 +1,100 @@
1
+ import { type IndexedToolCall } from './tool-calls.js';
2
+ import type { SessionMeta } from './types.js';
3
+ export declare const BACKFILL_MAX_STREAM_SOURCE_BYTES: number;
4
+ export declare const TOOL_SEARCH_SCHEMA_VERSION = 1;
5
+ export declare const TOOL_PROGRAM_COUNT_SCHEMA_VERSION = 1;
6
+ export declare const TOOL_QUERY_MAX_CLAUSES = 32;
7
+ export declare const TOOL_QUERY_MAX_CLAUSE_BYTES = 4096;
8
+ export declare const TOOL_QUERY_MAX_CALL_ROWS = 50000;
9
+ export declare const TOOL_QUERY_MAX_RESULT_BYTES: number;
10
+ export declare const TOOL_QUERY_MAX_RESULT_SESSIONS = 1000;
11
+ export declare const TOOL_QUERY_MAX_SERIALIZED_BYTES: number;
12
+ export declare const TOOL_QUERY_MERGE_OVERHEAD_BYTES: number;
13
+ export interface ToolIndexCoverage {
14
+ indexedFiles: number;
15
+ indexedCalls: number;
16
+ skippedFiles: number;
17
+ limitedFiles: number;
18
+ remainingFiles: number;
19
+ complete: boolean;
20
+ }
21
+ export interface ToolCallEvidence extends IndexedToolCall {
22
+ id: string;
23
+ }
24
+ export interface ToolSessionEvidence {
25
+ id: string;
26
+ shortId: string;
27
+ agent: string;
28
+ machine?: string;
29
+ timestamp: string;
30
+ project?: string;
31
+ cwd?: string;
32
+ topic?: string;
33
+ label?: string;
34
+ filePath?: string;
35
+ calls: ToolCallEvidence[];
36
+ }
37
+ export interface ToolSearchEnvelope {
38
+ schemaVersion: typeof TOOL_SEARCH_SCHEMA_VERSION;
39
+ generatedAt: string;
40
+ query: {
41
+ clauses: string[];
42
+ };
43
+ coverage: ToolIndexCoverage;
44
+ sessions: ToolSessionEvidence[];
45
+ }
46
+ export interface ToolProgramCountTotals {
47
+ occurrences: number;
48
+ toolCalls: number;
49
+ sessions: number;
50
+ }
51
+ export interface ToolProgramCountEnvelope {
52
+ schemaVersion: typeof TOOL_PROGRAM_COUNT_SCHEMA_VERSION;
53
+ kind: 'tool-program-count';
54
+ generatedAt: string;
55
+ query: {
56
+ program: string;
57
+ semantics: 'static-program-occurrences-v1';
58
+ };
59
+ coverage: ToolIndexCoverage;
60
+ totals: ToolProgramCountTotals;
61
+ machines: Array<{
62
+ machine: string;
63
+ coverage: ToolIndexCoverage;
64
+ totals: ToolProgramCountTotals;
65
+ }>;
66
+ }
67
+ /** Serialize once and enforce headroom below the fleet transport's 16 MiB cap. */
68
+ export declare function serializeToolSearchEnvelope(envelope: ToolSearchEnvelope): string;
69
+ /** Exact UTF-8 size of the public pretty-JSON envelope. */
70
+ export declare function serializedToolSearchEnvelopeBytes(envelope: ToolSearchEnvelope): number;
71
+ /**
72
+ * Reserve the exact local JSON plus coordinator headroom before retaining peer
73
+ * stdout. Peer envelopes repeat metadata that disappears during merge, so
74
+ * charging their full wire bytes against the remainder is conservative.
75
+ */
76
+ export declare function toolSearchRemoteReceiveBudget(envelope: ToolSearchEnvelope): number;
77
+ /** Read index completeness from SQLite only; never stat or parse transcripts. */
78
+ export declare function readToolIndexCoverage(sessions: SessionMeta[]): ToolIndexCoverage;
79
+ /**
80
+ * Fill one bounded chunk of the independent tool index. A warm call performs
81
+ * only stat + ledger checks; it never opens or parses unchanged transcripts.
82
+ */
83
+ export declare function ensureToolIndex(sessions: SessionMeta[], limits?: {
84
+ maxFiles?: number;
85
+ maxBytes?: number;
86
+ verifySourceStamps?: boolean;
87
+ }): Promise<ToolIndexCoverage>;
88
+ interface QueryTerm {
89
+ field?: 'tool' | 'program' | 'input' | 'output' | 'status' | 'exit' | 'error';
90
+ value: string;
91
+ }
92
+ /** Parse one same-call clause. Unprefixed terms search every evidence field. */
93
+ export declare function parseToolQueryClause(source: string): QueryTerm[];
94
+ /** A count has one unambiguous subject: one exact `program:<name>` term. */
95
+ export declare function parseToolProgramCountClause(source: string): string;
96
+ /** Count exact, pre-indexed static program sites without reading transcripts. */
97
+ export declare function countToolProgramOccurrences(sessions: SessionMeta[], program: string, coverage: ToolIndexCoverage, machine: string): ToolProgramCountEnvelope;
98
+ /** Query cached evidence; every repeated clause must select a distinct call. */
99
+ export declare function searchToolCalls(sessions: SessionMeta[], clauseSources: string[], coverage: ToolIndexCoverage, resultLimit?: number): ToolSearchEnvelope;
100
+ export {};