@autonav/core 1.6.0 → 1.7.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 +2 -2
- package/dist/adapter/index.d.ts +3 -3
- package/dist/adapter/index.d.ts.map +1 -1
- package/dist/adapter/index.js +3 -3
- package/dist/adapter/index.js.map +1 -1
- package/dist/adapter/navigator-adapter.d.ts +196 -0
- package/dist/adapter/navigator-adapter.d.ts.map +1 -0
- package/dist/adapter/navigator-adapter.js +579 -0
- package/dist/adapter/navigator-adapter.js.map +1 -0
- package/dist/cli/autonav.d.ts +2 -6
- package/dist/cli/autonav.d.ts.map +1 -1
- package/dist/cli/autonav.js +32 -53
- package/dist/cli/autonav.js.map +1 -1
- package/dist/cli/nav-chat.d.ts +2 -1
- package/dist/cli/nav-chat.d.ts.map +1 -1
- package/dist/cli/nav-chat.js +32 -3
- package/dist/cli/nav-chat.js.map +1 -1
- package/dist/cli/nav-init.d.ts +2 -1
- package/dist/cli/nav-init.d.ts.map +1 -1
- package/dist/cli/nav-init.js +12 -4
- package/dist/cli/nav-init.js.map +1 -1
- package/dist/cli/nav-install.d.ts +2 -1
- package/dist/cli/nav-install.d.ts.map +1 -1
- package/dist/cli/nav-install.js +4 -2
- package/dist/cli/nav-install.js.map +1 -1
- package/dist/cli/nav-memento.d.ts +3 -2
- package/dist/cli/nav-memento.d.ts.map +1 -1
- package/dist/cli/nav-memento.js +12 -6
- package/dist/cli/nav-memento.js.map +1 -1
- package/dist/cli/nav-mend.d.ts +2 -1
- package/dist/cli/nav-mend.d.ts.map +1 -1
- package/dist/cli/nav-mend.js +4 -1
- package/dist/cli/nav-mend.js.map +1 -1
- package/dist/cli/nav-migrate.d.ts +2 -1
- package/dist/cli/nav-migrate.d.ts.map +1 -1
- package/dist/cli/nav-migrate.js +2 -6
- package/dist/cli/nav-migrate.js.map +1 -1
- package/dist/cli/nav-query.d.ts +2 -1
- package/dist/cli/nav-query.d.ts.map +1 -1
- package/dist/cli/nav-query.js +12 -6
- package/dist/cli/nav-query.js.map +1 -1
- package/dist/cli/nav-standup.d.ts +18 -0
- package/dist/cli/nav-standup.d.ts.map +1 -0
- package/dist/cli/nav-standup.js +151 -0
- package/dist/cli/nav-standup.js.map +1 -0
- package/dist/cli/nav-uninstall.d.ts +2 -1
- package/dist/cli/nav-uninstall.d.ts.map +1 -1
- package/dist/cli/nav-uninstall.js +4 -2
- package/dist/cli/nav-uninstall.js.map +1 -1
- package/dist/cli/nav-update.d.ts +2 -1
- package/dist/cli/nav-update.d.ts.map +1 -1
- package/dist/cli/nav-update.js +11 -6
- package/dist/cli/nav-update.js.map +1 -1
- package/dist/conversation/App.d.ts +9 -2
- package/dist/conversation/App.d.ts.map +1 -1
- package/dist/conversation/App.js +304 -111
- package/dist/conversation/App.js.map +1 -1
- package/dist/conversation/index.d.ts +5 -0
- package/dist/conversation/index.d.ts.map +1 -1
- package/dist/conversation/index.js +17 -2
- package/dist/conversation/index.js.map +1 -1
- package/dist/harness/chibi-harness.d.ts +36 -0
- package/dist/harness/chibi-harness.d.ts.map +1 -0
- package/dist/harness/chibi-harness.js +383 -0
- package/dist/harness/chibi-harness.js.map +1 -0
- package/dist/harness/chibi-plugins/get_plugin_config +64 -0
- package/dist/harness/chibi-plugins/query_navigator +114 -0
- package/dist/harness/chibi-plugins/submit_answer +38 -0
- package/dist/harness/chibi-plugins/update_plugin_config +91 -0
- package/dist/harness/claude-code-harness.d.ts +24 -0
- package/dist/harness/claude-code-harness.d.ts.map +1 -0
- package/dist/harness/claude-code-harness.js +242 -0
- package/dist/harness/claude-code-harness.js.map +1 -0
- package/dist/harness/ephemeral-home.d.ts +34 -0
- package/dist/harness/ephemeral-home.d.ts.map +1 -0
- package/dist/harness/ephemeral-home.js +56 -0
- package/dist/harness/ephemeral-home.js.map +1 -0
- package/dist/harness/factory.d.ts +47 -0
- package/dist/harness/factory.d.ts.map +1 -0
- package/dist/harness/factory.js +84 -0
- package/dist/harness/factory.js.map +1 -0
- package/dist/harness/helpers.d.ts +58 -0
- package/dist/harness/helpers.d.ts.map +1 -0
- package/dist/harness/helpers.js +78 -0
- package/dist/harness/helpers.js.map +1 -0
- package/dist/harness/index.d.ts +14 -0
- package/dist/harness/index.d.ts.map +1 -0
- package/dist/harness/index.js +13 -0
- package/dist/harness/index.js.map +1 -0
- package/dist/harness/opencode-harness.d.ts +79 -0
- package/dist/harness/opencode-harness.d.ts.map +1 -0
- package/dist/harness/opencode-harness.js +537 -0
- package/dist/harness/opencode-harness.js.map +1 -0
- package/dist/harness/opencode-tools/get_plugin_config.ts +72 -0
- package/dist/harness/opencode-tools/query_navigator.ts +126 -0
- package/dist/harness/opencode-tools/submit_answer.ts +40 -0
- package/dist/harness/opencode-tools/update_plugin_config.ts +105 -0
- package/dist/harness/sandbox.d.ts +59 -0
- package/dist/harness/sandbox.d.ts.map +1 -0
- package/dist/harness/sandbox.js +152 -0
- package/dist/harness/sandbox.js.map +1 -0
- package/dist/harness/tool-server.d.ts +50 -0
- package/dist/harness/tool-server.d.ts.map +1 -0
- package/dist/harness/tool-server.js +27 -0
- package/dist/harness/tool-server.js.map +1 -0
- package/dist/harness/types.d.ts +168 -0
- package/dist/harness/types.d.ts.map +1 -0
- package/dist/harness/types.js +12 -0
- package/dist/harness/types.js.map +1 -0
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -2
- package/dist/index.js.map +1 -1
- package/dist/interview/App.d.ts +4 -2
- package/dist/interview/App.d.ts.map +1 -1
- package/dist/interview/App.js +36 -56
- package/dist/interview/App.js.map +1 -1
- package/dist/interview/index.d.ts +3 -0
- package/dist/interview/index.d.ts.map +1 -1
- package/dist/interview/index.js +1 -0
- package/dist/interview/index.js.map +1 -1
- package/dist/interview/prompts.d.ts +3 -1
- package/dist/interview/prompts.d.ts.map +1 -1
- package/dist/interview/prompts.js +5 -1
- package/dist/interview/prompts.js.map +1 -1
- package/dist/interview/ui/ChatBanner.d.ts +17 -0
- package/dist/interview/ui/ChatBanner.d.ts.map +1 -0
- package/dist/interview/ui/ChatBanner.js +30 -0
- package/dist/interview/ui/ChatBanner.js.map +1 -0
- package/dist/interview/ui/ChatInput.d.ts +36 -0
- package/dist/interview/ui/ChatInput.d.ts.map +1 -0
- package/dist/interview/ui/ChatInput.js +304 -0
- package/dist/interview/ui/ChatInput.js.map +1 -0
- package/dist/interview/ui/MarkdownText.d.ts +13 -0
- package/dist/interview/ui/MarkdownText.d.ts.map +1 -0
- package/dist/interview/ui/MarkdownText.js +107 -0
- package/dist/interview/ui/MarkdownText.js.map +1 -0
- package/dist/interview/ui/index.d.ts +3 -0
- package/dist/interview/ui/index.d.ts.map +1 -1
- package/dist/interview/ui/index.js +3 -0
- package/dist/interview/ui/index.js.map +1 -1
- package/dist/memento/implementer-agent.d.ts +31 -0
- package/dist/memento/implementer-agent.d.ts.map +1 -0
- package/dist/memento/implementer-agent.js +95 -0
- package/dist/memento/implementer-agent.js.map +1 -0
- package/dist/memento/index.d.ts +6 -5
- package/dist/memento/index.d.ts.map +1 -1
- package/dist/memento/index.js +7 -5
- package/dist/memento/index.js.map +1 -1
- package/dist/memento/loop.d.ts +6 -5
- package/dist/memento/loop.d.ts.map +1 -1
- package/dist/memento/loop.js +872 -180
- package/dist/memento/loop.js.map +1 -1
- package/dist/memento/matrix-animation.d.ts +26 -0
- package/dist/memento/matrix-animation.d.ts.map +1 -1
- package/dist/memento/matrix-animation.js +93 -18
- package/dist/memento/matrix-animation.js.map +1 -1
- package/dist/memento/nav-protocol.d.ts +2 -2
- package/dist/memento/nav-protocol.d.ts.map +1 -1
- package/dist/memento/nav-protocol.js +39 -43
- package/dist/memento/nav-protocol.js.map +1 -1
- package/dist/memento/prompts.d.ts +21 -8
- package/dist/memento/prompts.d.ts.map +1 -1
- package/dist/memento/prompts.js +79 -39
- package/dist/memento/prompts.js.map +1 -1
- package/dist/memento/rate-limit.d.ts +85 -0
- package/dist/memento/rate-limit.d.ts.map +1 -0
- package/dist/memento/rate-limit.js +221 -0
- package/dist/memento/rate-limit.js.map +1 -0
- package/dist/memento/types.d.ts +6 -6
- package/dist/memento/types.d.ts.map +1 -1
- package/dist/memento/types.js +3 -3
- package/dist/memento/worker-agent.d.ts +4 -1
- package/dist/memento/worker-agent.d.ts.map +1 -1
- package/dist/memento/worker-agent.js +38 -54
- package/dist/memento/worker-agent.js.map +1 -1
- package/dist/registry.d.ts +35 -0
- package/dist/registry.d.ts.map +1 -0
- package/dist/registry.js +87 -0
- package/dist/registry.js.map +1 -0
- package/dist/repo-analyzer/index.d.ts +2 -1
- package/dist/repo-analyzer/index.d.ts.map +1 -1
- package/dist/repo-analyzer/index.js +6 -17
- package/dist/repo-analyzer/index.js.map +1 -1
- package/dist/skill-generator/index.d.ts +142 -0
- package/dist/skill-generator/index.d.ts.map +1 -0
- package/dist/skill-generator/index.js +510 -0
- package/dist/skill-generator/index.js.map +1 -0
- package/dist/standup/config.d.ts +19 -0
- package/dist/standup/config.d.ts.map +1 -0
- package/dist/standup/config.js +42 -0
- package/dist/standup/config.js.map +1 -0
- package/dist/standup/index.d.ts +24 -0
- package/dist/standup/index.d.ts.map +1 -0
- package/dist/standup/index.js +29 -0
- package/dist/standup/index.js.map +1 -0
- package/dist/standup/loop.d.ts +36 -0
- package/dist/standup/loop.d.ts.map +1 -0
- package/dist/standup/loop.js +508 -0
- package/dist/standup/loop.js.map +1 -0
- package/dist/standup/prompts.d.ts +62 -0
- package/dist/standup/prompts.d.ts.map +1 -0
- package/dist/standup/prompts.js +211 -0
- package/dist/standup/prompts.js.map +1 -0
- package/dist/standup/standup-protocol.d.ts +33 -0
- package/dist/standup/standup-protocol.d.ts.map +1 -0
- package/dist/standup/standup-protocol.js +189 -0
- package/dist/standup/standup-protocol.js.map +1 -0
- package/dist/standup/types.d.ts +185 -0
- package/dist/standup/types.d.ts.map +1 -0
- package/dist/standup/types.js +67 -0
- package/dist/standup/types.js.map +1 -0
- package/dist/templates/.gitignore.template +26 -0
- package/dist/templates/CLAUDE-pack.md.template +114 -0
- package/dist/templates/CLAUDE.md.template +153 -0
- package/dist/templates/README.md.template +174 -0
- package/dist/templates/config-pack.json.template +16 -0
- package/dist/templates/config.json.template +11 -0
- package/dist/templates/index.d.ts +22 -0
- package/dist/templates/index.d.ts.map +1 -0
- package/dist/templates/index.js +32 -0
- package/dist/templates/index.js.map +1 -0
- package/dist/templates/plugins.json.template +33 -0
- package/dist/templates/system-configuration.md.template +70 -0
- package/dist/tools/cross-nav.d.ts +21 -0
- package/dist/tools/cross-nav.d.ts.map +1 -0
- package/dist/tools/cross-nav.js +93 -0
- package/dist/tools/cross-nav.js.map +1 -0
- package/dist/tools/index.d.ts +1 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +1 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/related-navs-config.d.ts +15 -0
- package/dist/tools/related-navs-config.d.ts.map +1 -0
- package/dist/tools/related-navs-config.js +132 -0
- package/dist/tools/related-navs-config.js.map +1 -0
- package/dist/tools/related-navs.d.ts +23 -0
- package/dist/tools/related-navs.d.ts.map +1 -0
- package/dist/tools/related-navs.js +107 -0
- package/dist/tools/related-navs.js.map +1 -0
- package/dist/tools/response.d.ts +3 -2
- package/dist/tools/response.d.ts.map +1 -1
- package/dist/tools/response.js +7 -11
- package/dist/tools/response.js.map +1 -1
- package/dist/tools/self-config.d.ts +2 -1
- package/dist/tools/self-config.d.ts.map +1 -1
- package/dist/tools/self-config.js +5 -9
- package/dist/tools/self-config.js.map +1 -1
- package/package.json +4 -1
- package/dist/memento/state.d.ts +0 -56
- package/dist/memento/state.d.ts.map +0 -1
- package/dist/memento/state.js +0 -156
- package/dist/memento/state.js.map +0 -1
- package/dist/migrations/versions/v1.4.0-rfc2119-skills.d.ts +0 -18
- package/dist/migrations/versions/v1.4.0-rfc2119-skills.d.ts.map +0 -1
- package/dist/migrations/versions/v1.4.0-rfc2119-skills.js +0 -207
- package/dist/migrations/versions/v1.4.0-rfc2119-skills.js.map +0 -1
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Harness Adapter Types
|
|
3
|
+
*
|
|
4
|
+
* Defines the universal interface for agent runtimes. Each harness
|
|
5
|
+
* implementation translates autonav's needs into the underlying runtime
|
|
6
|
+
* (Claude Code SDK, chibi, future runtimes).
|
|
7
|
+
*
|
|
8
|
+
* Everything goes through the harness: query, update, chat, memento,
|
|
9
|
+
* standup, and agent-to-agent communication.
|
|
10
|
+
*/
|
|
11
|
+
import type { ToolDefinition } from "./tool-server.js";
|
|
12
|
+
/**
|
|
13
|
+
* Supported harness types
|
|
14
|
+
*/
|
|
15
|
+
export type HarnessType = "claude-code" | "chibi" | "opencode";
|
|
16
|
+
/**
|
|
17
|
+
* Sandbox configuration for process isolation.
|
|
18
|
+
*
|
|
19
|
+
* Each harness translates this to its native sandbox mechanism:
|
|
20
|
+
* - ChibiHarness → nono (Landlock on Linux, Seatbelt on macOS)
|
|
21
|
+
* - ClaudeCodeHarness → SDK sandbox (Seatbelt on macOS, bubblewrap on Linux)
|
|
22
|
+
*
|
|
23
|
+
* Falls back gracefully when the underlying mechanism is unavailable
|
|
24
|
+
* (e.g., nono not installed → chibi runs unsandboxed).
|
|
25
|
+
*/
|
|
26
|
+
export interface SandboxConfig {
|
|
27
|
+
/** Explicitly enable/disable. Default: auto-detect nono on PATH. AUTONAV_SANDBOX=0 to disable. */
|
|
28
|
+
enabled?: boolean;
|
|
29
|
+
/** Paths with read-only access */
|
|
30
|
+
readPaths?: string[];
|
|
31
|
+
/** Paths with read+write access */
|
|
32
|
+
writePaths?: string[];
|
|
33
|
+
/** Block all network access */
|
|
34
|
+
blockNetwork?: boolean;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Configuration for an agent session.
|
|
38
|
+
*
|
|
39
|
+
* Each harness translates this into its runtime's native config format.
|
|
40
|
+
* Fields map naturally to Claude Code SDK options and chibi-json config.
|
|
41
|
+
*/
|
|
42
|
+
export interface AgentConfig {
|
|
43
|
+
/** Model to use (e.g. "claude-sonnet-4-5", "claude-haiku-4-5") */
|
|
44
|
+
model?: string;
|
|
45
|
+
/** System prompt for the agent */
|
|
46
|
+
systemPrompt?: string;
|
|
47
|
+
/** Working directory for the agent */
|
|
48
|
+
cwd?: string;
|
|
49
|
+
/** Additional directories the agent can access */
|
|
50
|
+
additionalDirectories?: string[];
|
|
51
|
+
/** Maximum turns for the agent loop */
|
|
52
|
+
maxTurns?: number;
|
|
53
|
+
/** Maximum budget in USD */
|
|
54
|
+
maxBudgetUsd?: number;
|
|
55
|
+
/** Tools the agent is allowed to use */
|
|
56
|
+
allowedTools?: string[];
|
|
57
|
+
/** Tools the agent is disallowed from using */
|
|
58
|
+
disallowedTools?: string[];
|
|
59
|
+
/** MCP servers to provide to the agent */
|
|
60
|
+
mcpServers?: Record<string, unknown>;
|
|
61
|
+
/** Permission mode (e.g. "bypassPermissions", "acceptEdits") */
|
|
62
|
+
permissionMode?: string;
|
|
63
|
+
/** Stderr handler for diagnostic output */
|
|
64
|
+
stderr?: (data: string) => void;
|
|
65
|
+
/**
|
|
66
|
+
* Sandbox configuration for process isolation.
|
|
67
|
+
* Each harness translates this to its native sandbox mechanism:
|
|
68
|
+
* nono for chibi, SDK sandbox for Claude Code.
|
|
69
|
+
*/
|
|
70
|
+
sandbox?: SandboxConfig;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Events emitted by a harness during agent execution.
|
|
74
|
+
*
|
|
75
|
+
* This is the universal event format — each harness translates its native
|
|
76
|
+
* events into these types. Consumers never need to know which runtime
|
|
77
|
+
* is being used.
|
|
78
|
+
*/
|
|
79
|
+
export type AgentEvent = {
|
|
80
|
+
type: "text";
|
|
81
|
+
text: string;
|
|
82
|
+
} | {
|
|
83
|
+
type: "tool_use";
|
|
84
|
+
name: string;
|
|
85
|
+
id: string;
|
|
86
|
+
input: Record<string, unknown>;
|
|
87
|
+
} | {
|
|
88
|
+
type: "tool_result";
|
|
89
|
+
toolUseId: string;
|
|
90
|
+
content: string;
|
|
91
|
+
isError?: boolean;
|
|
92
|
+
} | {
|
|
93
|
+
type: "error";
|
|
94
|
+
message: string;
|
|
95
|
+
retryable?: boolean;
|
|
96
|
+
} | {
|
|
97
|
+
type: "result";
|
|
98
|
+
success: boolean;
|
|
99
|
+
text?: string;
|
|
100
|
+
usage?: {
|
|
101
|
+
inputTokens: number;
|
|
102
|
+
outputTokens: number;
|
|
103
|
+
};
|
|
104
|
+
costUsd?: number;
|
|
105
|
+
durationMs?: number;
|
|
106
|
+
durationApiMs?: number;
|
|
107
|
+
numTurns?: number;
|
|
108
|
+
sessionId?: string;
|
|
109
|
+
};
|
|
110
|
+
/**
|
|
111
|
+
* A running harness session.
|
|
112
|
+
*
|
|
113
|
+
* Implements AsyncIterable so you can use `for await...of` to consume events.
|
|
114
|
+
* For multi-turn conversations, call `send()` to continue after the initial
|
|
115
|
+
* response completes.
|
|
116
|
+
*
|
|
117
|
+
* Usage patterns:
|
|
118
|
+
*
|
|
119
|
+
* Single-shot (query, memento implementer, reviewer):
|
|
120
|
+
* ```typescript
|
|
121
|
+
* for await (const event of harness.run(config, prompt)) { ... }
|
|
122
|
+
* ```
|
|
123
|
+
*
|
|
124
|
+
* Multi-turn (chat, standup nav-to-nav conversations):
|
|
125
|
+
* ```typescript
|
|
126
|
+
* const session = harness.run(config, firstPrompt);
|
|
127
|
+
* for await (const event of session) { ... }
|
|
128
|
+
* for await (const event of session.send(followUp)) { ... }
|
|
129
|
+
* await session.close();
|
|
130
|
+
* ```
|
|
131
|
+
*/
|
|
132
|
+
export interface HarnessSession extends AsyncIterable<AgentEvent> {
|
|
133
|
+
/** Send a follow-up prompt in the same session */
|
|
134
|
+
send(prompt: string): AsyncIterable<AgentEvent>;
|
|
135
|
+
/** Update session config (e.g. change model mid-session) */
|
|
136
|
+
updateConfig(config: Partial<AgentConfig>): void;
|
|
137
|
+
/** Close the session and clean up resources */
|
|
138
|
+
close(): Promise<void>;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* A harness adapter that translates autonav's needs into a specific runtime.
|
|
142
|
+
*
|
|
143
|
+
* Each implementation (ClaudeCodeHarness, ChibiHarness) maps AgentConfig
|
|
144
|
+
* to its runtime's native options and translates events back to AgentEvent.
|
|
145
|
+
*/
|
|
146
|
+
export interface Harness {
|
|
147
|
+
/** Display name for error messages and diagnostics */
|
|
148
|
+
readonly displayName: string;
|
|
149
|
+
/** Start a new agent session with the given config and initial prompt */
|
|
150
|
+
run(config: AgentConfig, prompt: string): HarnessSession;
|
|
151
|
+
/**
|
|
152
|
+
* Create a tool server that hosts tool handlers within the agent session.
|
|
153
|
+
*
|
|
154
|
+
* Each harness adapts tool definitions to its native hosting mechanism:
|
|
155
|
+
* - ClaudeCodeHarness: SDK `tool()` + `createSdkMcpServer()` (in-process MCP)
|
|
156
|
+
* - ChibiHarness: JSONL tool_call/tool_result interception (no MCP needed)
|
|
157
|
+
*
|
|
158
|
+
* The returned `server` is opaque — pass it via `AgentConfig.mcpServers`.
|
|
159
|
+
*
|
|
160
|
+
* @param name - Server name (e.g. "autonav-response")
|
|
161
|
+
* @param tools - Tool definitions created with `defineTool()`
|
|
162
|
+
* @returns Object containing the server to pass to `mcpServers`
|
|
163
|
+
*/
|
|
164
|
+
createToolServer(name: string, tools: ToolDefinition[]): {
|
|
165
|
+
server: unknown;
|
|
166
|
+
};
|
|
167
|
+
}
|
|
168
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/harness/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Harness Adapter Types
|
|
3
|
+
*
|
|
4
|
+
* Defines the universal interface for agent runtimes. Each harness
|
|
5
|
+
* implementation translates autonav's needs into the underlying runtime
|
|
6
|
+
* (Claude Code SDK, chibi, future runtimes).
|
|
7
|
+
*
|
|
8
|
+
* Everything goes through the harness: query, update, chat, memento,
|
|
9
|
+
* standup, and agent-to-agent communication.
|
|
10
|
+
*/
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/harness/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Platform AI Autonav
|
|
3
3
|
*
|
|
4
|
-
* CLI tools and
|
|
4
|
+
* CLI tools and Navigator Adapter for building and querying navigators
|
|
5
5
|
*
|
|
6
6
|
* @packageDocumentation
|
|
7
7
|
*/
|
|
8
|
-
export {
|
|
8
|
+
export { NavigatorAdapter, type NavigatorAdapterOptions, type LoadedNavigator, type QueryOptions, } from "./adapter/index.js";
|
|
9
9
|
export { createSelfConfigMcpServer, CONFIGURABLE_PLUGINS, processToolCall, handleUpdatePluginConfig, handleGetPluginConfig, type ConfigurablePlugin, type UpdatePluginConfigInput, type GetPluginConfigInput, type SelfConfigResult, } from "./tools/index.js";
|
|
10
10
|
export { type Plugin, type PluginHealthStatus, PluginError, PluginInitializationError, PluginListenError, PluginActionError, PluginConfigurationError, PluginManager, type PluginsConfig, createPluginManager, FileWatcherPlugin, SlackPlugin, GitHubPlugin, PluginConfigFileSchema, type PluginConfigFile, } from "./plugins/index.js";
|
|
11
11
|
export * from "./query-engine/index.js";
|
|
12
12
|
export { checkNavigatorHealth, autoFixNavigator, mendNavigator, type MendCheckResult, type MendResult, } from "./mend/index.js";
|
|
13
|
+
export { type Harness, type HarnessSession, type AgentConfig, type AgentEvent, type HarnessType, ClaudeCodeHarness, resolveHarnessType, createHarness, resolveAndCreateHarness, collectText, collectResult, type CollectedResult, } from "./harness/index.js";
|
|
13
14
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EACL,gBAAgB,EAChB,KAAK,uBAAuB,EAC5B,KAAK,eAAe,EACpB,KAAK,YAAY,GAClB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,yBAAyB,EACzB,oBAAoB,EACpB,eAAe,EACf,wBAAwB,EACxB,qBAAqB,EACrB,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,GACtB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAEL,KAAK,MAAM,EACX,KAAK,kBAAkB,EACvB,WAAW,EACX,yBAAyB,EACzB,iBAAiB,EACjB,iBAAiB,EACjB,wBAAwB,EAExB,aAAa,EACb,KAAK,aAAa,EAClB,mBAAmB,EAEnB,iBAAiB,EACjB,WAAW,EACX,YAAY,EAEZ,sBAAsB,EACtB,KAAK,gBAAgB,GACtB,MAAM,oBAAoB,CAAC;AAG5B,cAAc,yBAAyB,CAAC;AAGxC,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,aAAa,EACb,KAAK,eAAe,EACpB,KAAK,UAAU,GAChB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,uBAAuB,EACvB,WAAW,EACX,aAAa,EACb,KAAK,eAAe,GACrB,MAAM,oBAAoB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Platform AI Autonav
|
|
3
3
|
*
|
|
4
|
-
* CLI tools and
|
|
4
|
+
* CLI tools and Navigator Adapter for building and querying navigators
|
|
5
5
|
*
|
|
6
6
|
* @packageDocumentation
|
|
7
7
|
*/
|
|
8
8
|
// Export adapter
|
|
9
|
-
export {
|
|
9
|
+
export { NavigatorAdapter, } from "./adapter/index.js";
|
|
10
10
|
// Export self-configuration tools
|
|
11
11
|
export { createSelfConfigMcpServer, CONFIGURABLE_PLUGINS, processToolCall, handleUpdatePluginConfig, handleGetPluginConfig, } from "./tools/index.js";
|
|
12
12
|
// Export plugin system
|
|
@@ -21,4 +21,6 @@ PluginConfigFileSchema, } from "./plugins/index.js";
|
|
|
21
21
|
export * from "./query-engine/index.js";
|
|
22
22
|
// Export mend (health check and repair)
|
|
23
23
|
export { checkNavigatorHealth, autoFixNavigator, mendNavigator, } from "./mend/index.js";
|
|
24
|
+
// Export harness (agent runtime adapter)
|
|
25
|
+
export { ClaudeCodeHarness, resolveHarnessType, createHarness, resolveAndCreateHarness, collectText, collectResult, } from "./harness/index.js";
|
|
24
26
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,iBAAiB;AACjB,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,iBAAiB;AACjB,OAAO,EACL,gBAAgB,GAIjB,MAAM,oBAAoB,CAAC;AAE5B,kCAAkC;AAClC,OAAO,EACL,yBAAyB,EACzB,oBAAoB,EACpB,eAAe,EACf,wBAAwB,EACxB,qBAAqB,GAKtB,MAAM,kBAAkB,CAAC;AAE1B,uBAAuB;AACvB,OAAO,EAIL,WAAW,EACX,yBAAyB,EACzB,iBAAiB,EACjB,iBAAiB,EACjB,wBAAwB;AACxB,iBAAiB;AACjB,aAAa,EAEb,mBAAmB;AACnB,yBAAyB;AACzB,iBAAiB,EACjB,WAAW,EACX,YAAY;AACZ,uBAAuB;AACvB,sBAAsB,GAEvB,MAAM,oBAAoB,CAAC;AAE5B,sBAAsB;AACtB,cAAc,yBAAyB,CAAC;AAExC,wCAAwC;AACxC,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,aAAa,GAGd,MAAM,iBAAiB,CAAC;AAEzB,yCAAyC;AACzC,OAAO,EAML,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,uBAAuB,EACvB,WAAW,EACX,aAAa,GAEd,MAAM,oBAAoB,CAAC"}
|
package/dist/interview/App.d.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Ink-based TUI for interactive nav init interview
|
|
3
3
|
*
|
|
4
|
-
* Uses
|
|
4
|
+
* Uses the harness abstraction for LLM communication.
|
|
5
5
|
*/
|
|
6
6
|
import { type NavigatorConfig, type PackContext } from "./prompts.js";
|
|
7
7
|
import type { AnalysisResult } from "../repo-analyzer/index.js";
|
|
8
|
+
import { type Harness } from "../harness/index.js";
|
|
8
9
|
interface Message {
|
|
9
10
|
role: "user" | "assistant";
|
|
10
11
|
content: string;
|
|
@@ -16,7 +17,8 @@ interface InterviewAppProps {
|
|
|
16
17
|
analysisContext?: AnalysisResult;
|
|
17
18
|
initialMessages?: Message[];
|
|
18
19
|
onComplete: (config: NavigatorConfig) => void;
|
|
20
|
+
harness: Harness;
|
|
19
21
|
}
|
|
20
|
-
export declare function InterviewApp({ name, navigatorPath, packContext, analysisContext, initialMessages, onComplete, }: InterviewAppProps): import("react/jsx-runtime").JSX.Element;
|
|
22
|
+
export declare function InterviewApp({ name, navigatorPath, packContext, analysisContext, initialMessages, onComplete, harness, }: InterviewAppProps): import("react/jsx-runtime").JSX.Element;
|
|
21
23
|
export {};
|
|
22
24
|
//# sourceMappingURL=App.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../src/interview/App.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../src/interview/App.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EAGL,KAAK,eAAe,EACpB,KAAK,WAAW,EACjB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAGhE,OAAO,EAAE,KAAK,OAAO,EAAgC,MAAM,qBAAqB,CAAC;AAwHjF,UAAU,OAAO;IACf,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,iBAAiB;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,eAAe,CAAC,EAAE,cAAc,CAAC;IACjC,eAAe,CAAC,EAAE,OAAO,EAAE,CAAC;IAC5B,UAAU,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;IAC9C,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,YAAY,CAAC,EAC3B,IAAI,EACJ,aAAa,EACb,WAAW,EACX,eAAe,EACf,eAAe,EACf,UAAU,EACV,OAAO,GACR,EAAE,iBAAiB,2CA0VnB"}
|
package/dist/interview/App.js
CHANGED
|
@@ -2,15 +2,15 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
|
|
|
2
2
|
/**
|
|
3
3
|
* Ink-based TUI for interactive nav init interview
|
|
4
4
|
*
|
|
5
|
-
* Uses
|
|
5
|
+
* Uses the harness abstraction for LLM communication.
|
|
6
6
|
*/
|
|
7
7
|
import { useState, useEffect, useCallback, useRef } from "react";
|
|
8
8
|
import { Box, Text, useApp, useInput } from "ink";
|
|
9
9
|
import TextInput from "ink-text-input";
|
|
10
|
-
import { query } from "@anthropic-ai/claude-agent-sdk";
|
|
11
10
|
import { getInterviewSystemPrompt, parseNavigatorConfig, } from "./prompts.js";
|
|
12
11
|
import { saveProgress, clearProgress } from "./progress.js";
|
|
13
12
|
import { ActivityIndicator, Banner, SystemMessage, UserResponse, Divider } from "./ui/index.js";
|
|
13
|
+
import { collectText } from "../harness/index.js";
|
|
14
14
|
// Check if debug mode is enabled
|
|
15
15
|
const DEBUG = process.env.AUTONAV_DEBUG === "1" || process.env.DEBUG === "1";
|
|
16
16
|
// Model to use for interview
|
|
@@ -36,24 +36,14 @@ const CONFIG_GENERATION_STEPS = [
|
|
|
36
36
|
* This avoids the nested backtick problem where claudeMd contains markdown
|
|
37
37
|
* with code blocks that break the JSON extraction regex.
|
|
38
38
|
*/
|
|
39
|
-
async function generateConfigFields(conversationHistory, systemPrompt, name, onProgress) {
|
|
39
|
+
async function generateConfigFields(conversationHistory, systemPrompt, name, onProgress, harness) {
|
|
40
40
|
// Helper to make a single-field extraction call
|
|
41
41
|
const extractField = async (fieldPrompt) => {
|
|
42
|
-
const
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
permissionMode: "bypassPermissions",
|
|
48
|
-
},
|
|
49
|
-
});
|
|
50
|
-
let result = "";
|
|
51
|
-
for await (const message of q) {
|
|
52
|
-
if (message.type === "assistant") {
|
|
53
|
-
const textBlocks = message.message.content.filter((b) => b.type === "text");
|
|
54
|
-
result = textBlocks.map((b) => b.text).join("\n");
|
|
55
|
-
}
|
|
56
|
-
}
|
|
42
|
+
const result = await collectText(harness.run({
|
|
43
|
+
model: INTERVIEW_MODEL,
|
|
44
|
+
systemPrompt,
|
|
45
|
+
permissionMode: "bypassPermissions",
|
|
46
|
+
}, `<conversation>\n${conversationHistory}\n</conversation>\n\n${fieldPrompt}`));
|
|
57
47
|
return result.trim();
|
|
58
48
|
};
|
|
59
49
|
debugLog("Generating config fields separately...");
|
|
@@ -98,7 +88,7 @@ async function generateConfigFields(conversationHistory, systemPrompt, name, onP
|
|
|
98
88
|
...(suggestedDirectories.length > 0 && { suggestedDirectories }),
|
|
99
89
|
};
|
|
100
90
|
}
|
|
101
|
-
export function InterviewApp({ name, navigatorPath, packContext, analysisContext, initialMessages, onComplete, }) {
|
|
91
|
+
export function InterviewApp({ name, navigatorPath, packContext, analysisContext, initialMessages, onComplete, harness, }) {
|
|
102
92
|
// Get the system prompt, customized for pack or analysis if provided
|
|
103
93
|
const systemPrompt = getInterviewSystemPrompt(packContext, analysisContext);
|
|
104
94
|
const [messages, setMessages] = useState(initialMessages || []);
|
|
@@ -109,24 +99,21 @@ export function InterviewApp({ name, navigatorPath, packContext, analysisContext
|
|
|
109
99
|
const [completionStep, setCompletionStep] = useState(null);
|
|
110
100
|
const [error, setError] = useState(null);
|
|
111
101
|
const [showHint, setShowHint] = useState(false);
|
|
112
|
-
const
|
|
102
|
+
const sessionRef = useRef(null);
|
|
113
103
|
const completedRef = useRef(false);
|
|
114
104
|
const { exit } = useApp();
|
|
115
|
-
// Process
|
|
105
|
+
// Process events from the harness session
|
|
116
106
|
const processResponse = useCallback(async () => {
|
|
117
|
-
const
|
|
118
|
-
if (!
|
|
107
|
+
const session = sessionRef.current;
|
|
108
|
+
if (!session || completedRef.current)
|
|
119
109
|
return;
|
|
120
110
|
try {
|
|
121
111
|
debugLog("Waiting for Claude response...");
|
|
122
112
|
let fullText = "";
|
|
123
|
-
for await (const
|
|
124
|
-
debugLog("Received
|
|
125
|
-
if (
|
|
126
|
-
|
|
127
|
-
const content = message.message.content;
|
|
128
|
-
const textBlocks = content.filter((b) => b.type === "text");
|
|
129
|
-
const text = textBlocks.map((b) => b.text).join("\n");
|
|
113
|
+
for await (const event of session) {
|
|
114
|
+
debugLog("Received event type:", event.type);
|
|
115
|
+
if (event.type === "text") {
|
|
116
|
+
const text = event.text;
|
|
130
117
|
if (text) {
|
|
131
118
|
fullText = text;
|
|
132
119
|
setMessages((prev) => {
|
|
@@ -153,9 +140,8 @@ export function InterviewApp({ name, navigatorPath, packContext, analysisContext
|
|
|
153
140
|
});
|
|
154
141
|
}
|
|
155
142
|
}
|
|
156
|
-
else if (
|
|
157
|
-
debugLog("Result received:",
|
|
158
|
-
// Query completed, check if we got a config
|
|
143
|
+
else if (event.type === "result") {
|
|
144
|
+
debugLog("Result received:", event.success ? "success" : "error");
|
|
159
145
|
break;
|
|
160
146
|
}
|
|
161
147
|
}
|
|
@@ -218,17 +204,14 @@ export function InterviewApp({ name, navigatorPath, packContext, analysisContext
|
|
|
218
204
|
initialMessage += `\nI'd like to refine these details before creating the navigator.`;
|
|
219
205
|
}
|
|
220
206
|
debugLog("Initial message:", initialMessage);
|
|
221
|
-
// Create
|
|
222
|
-
const
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
});
|
|
230
|
-
queryRef.current = queryInstance;
|
|
231
|
-
debugLog("Query created");
|
|
207
|
+
// Create session via harness
|
|
208
|
+
const session = harness.run({
|
|
209
|
+
model: INTERVIEW_MODEL,
|
|
210
|
+
systemPrompt,
|
|
211
|
+
permissionMode: "bypassPermissions",
|
|
212
|
+
}, initialMessage);
|
|
213
|
+
sessionRef.current = session;
|
|
214
|
+
debugLog("Session created");
|
|
232
215
|
// Process response
|
|
233
216
|
await processResponse();
|
|
234
217
|
}
|
|
@@ -241,7 +224,7 @@ export function InterviewApp({ name, navigatorPath, packContext, analysisContext
|
|
|
241
224
|
}
|
|
242
225
|
};
|
|
243
226
|
initQuery();
|
|
244
|
-
}, [name, processResponse, initialMessages]);
|
|
227
|
+
}, [name, processResponse, initialMessages, harness, systemPrompt, analysisContext]);
|
|
245
228
|
// Show hint after 5+ user messages
|
|
246
229
|
useEffect(() => {
|
|
247
230
|
const userMessageCount = messages.filter(m => m.role === 'user').length;
|
|
@@ -284,7 +267,7 @@ export function InterviewApp({ name, navigatorPath, packContext, analysisContext
|
|
|
284
267
|
const conversationHistory = messages
|
|
285
268
|
.map((m) => `<${m.role}>\n${m.content}\n</${m.role}>`)
|
|
286
269
|
.join("\n\n");
|
|
287
|
-
const config = await generateConfigFields(conversationHistory, systemPrompt, name, (_step, label) => setCompletionStep(label));
|
|
270
|
+
const config = await generateConfigFields(conversationHistory, systemPrompt, name, (_step, label) => setCompletionStep(label), harness);
|
|
288
271
|
completedRef.current = true;
|
|
289
272
|
clearProgress(navigatorPath);
|
|
290
273
|
setTimeout(() => onComplete(config), 0);
|
|
@@ -336,15 +319,12 @@ ${value}
|
|
|
336
319
|
</user_message>
|
|
337
320
|
|
|
338
321
|
Continue the interview by responding to their message. Remember: after gathering enough information (usually 4-6 exchanges), you should signal that you're ready to create the navigator and wait for the user to type 'done'. Do NOT output the JSON configuration until the user explicitly says they're ready. Do NOT simulate user responses - only provide YOUR response as the assistant.`;
|
|
339
|
-
const
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
},
|
|
346
|
-
});
|
|
347
|
-
queryRef.current = queryInstance;
|
|
322
|
+
const session = harness.run({
|
|
323
|
+
model: INTERVIEW_MODEL,
|
|
324
|
+
systemPrompt,
|
|
325
|
+
permissionMode: "bypassPermissions",
|
|
326
|
+
}, fullPrompt);
|
|
327
|
+
sessionRef.current = session;
|
|
348
328
|
await processResponse();
|
|
349
329
|
}
|
|
350
330
|
catch (err) {
|
|
@@ -352,7 +332,7 @@ Continue the interview by responding to their message. Remember: after gathering
|
|
|
352
332
|
setError(err instanceof Error ? err.message : "Failed to send message");
|
|
353
333
|
setIsLoading(false);
|
|
354
334
|
}
|
|
355
|
-
}, [isLoading, messages, systemPrompt, processResponse, name, navigatorPath, packContext, analysisContext, onComplete]);
|
|
335
|
+
}, [isLoading, messages, systemPrompt, processResponse, name, navigatorPath, packContext, analysisContext, onComplete, harness]);
|
|
356
336
|
// Handle Ctrl+C to exit
|
|
357
337
|
useInput((input, key) => {
|
|
358
338
|
if (key.ctrl && input === "c") {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"App.js","sourceRoot":"","sources":["../../src/interview/App.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"App.js","sourceRoot":"","sources":["../../src/interview/App.tsx"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
import type { NavigatorConfig, PackContext } from "./prompts.js";
|
|
8
8
|
import type { AnalysisResult } from "../repo-analyzer/index.js";
|
|
9
9
|
import type { InterviewProgress } from "./progress.js";
|
|
10
|
+
import type { Harness } from "../harness/index.js";
|
|
10
11
|
export type { NavigatorConfig, PackContext } from "./prompts.js";
|
|
11
12
|
export type { InterviewProgress } from "./progress.js";
|
|
12
13
|
export { getInterviewSystemPrompt } from "./prompts.js";
|
|
@@ -23,6 +24,8 @@ export interface InterviewOptions {
|
|
|
23
24
|
analysisContext?: AnalysisResult;
|
|
24
25
|
/** Optional saved progress to resume from */
|
|
25
26
|
savedProgress?: InterviewProgress;
|
|
27
|
+
/** Harness instance for LLM communication */
|
|
28
|
+
harness: Harness;
|
|
26
29
|
}
|
|
27
30
|
/**
|
|
28
31
|
* Check if the current environment supports interactive TTY input
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/interview/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/interview/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEnD,YAAY,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACjE,YAAY,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,EACL,WAAW,EACX,YAAY,EACZ,aAAa,EACb,kBAAkB,GACnB,MAAM,eAAe,CAAC;AAEvB;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,sCAAsC;IACtC,aAAa,EAAE,MAAM,CAAC;IACtB,uDAAuD;IACvD,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,qDAAqD;IACrD,eAAe,CAAC,EAAE,cAAc,CAAC;IACjC,6CAA6C;IAC7C,aAAa,CAAC,EAAE,iBAAiB,CAAC;IAClC,6CAA6C;IAC7C,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,OAAO,CAM/C;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,eAAe,CAAC,CA0C1B"}
|
package/dist/interview/index.js
CHANGED
|
@@ -50,6 +50,7 @@ export function runInterviewTUI(name, options) {
|
|
|
50
50
|
analysisContext: options.analysisContext,
|
|
51
51
|
initialMessages: options.savedProgress?.messages,
|
|
52
52
|
onComplete: handleComplete,
|
|
53
|
+
harness: options.harness,
|
|
53
54
|
}));
|
|
54
55
|
// Handle unmount without completion (user cancelled)
|
|
55
56
|
instance.waitUntilExit().then(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/interview/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/interview/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAQxC,OAAO,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,EACL,WAAW,EACX,YAAY,EACZ,aAAa,EACb,kBAAkB,GACnB,MAAM,eAAe,CAAC;AAkBvB;;GAEG;AACH,MAAM,UAAU,qBAAqB;IACnC,OAAO,OAAO,CACZ,OAAO,CAAC,KAAK,CAAC,KAAK;QACnB,OAAO,CAAC,MAAM,CAAC,KAAK;QACpB,OAAO,CAAC,KAAK,CAAC,UAAU,CACzB,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAC7B,IAAY,EACZ,OAAyB;IAEzB,oDAAoD;IACpD,IAAI,CAAC,qBAAqB,EAAE,EAAE,CAAC;QAC7B,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAC7B,mFAAmF,CACpF,CAAC,CAAC;IACL,CAAC;IAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,SAAS,GAAG,KAAK,CAAC;QAEtB,MAAM,cAAc,GAAG,CAAC,MAAuB,EAAE,EAAE;YACjD,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,GAAG,EAAE,CAAC;gBACnE,OAAO,CAAC,KAAK,CAAC,yDAAyD,CAAC,CAAC;YAC3E,CAAC;YACD,SAAS,GAAG,IAAI,CAAC;YACjB,QAAQ,CAAC,OAAO,EAAE,CAAC;YACnB,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,GAAG,EAAE,CAAC;gBACnE,OAAO,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;YAC5D,CAAC;YACD,OAAO,CAAC,MAAM,CAAC,CAAC;QAClB,CAAC,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,CACrB,KAAK,CAAC,aAAa,CAAC,YAAY,EAAE;YAChC,IAAI;YACJ,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,eAAe,EAAE,OAAO,CAAC,eAAe;YACxC,eAAe,EAAE,OAAO,CAAC,aAAa,EAAE,QAAQ;YAChD,UAAU,EAAE,cAAc;YAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC,CACH,CAAC;QAEF,qDAAqD;QACrD,QAAQ,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;YACjC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC,CAAC;YACnD,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -17,7 +17,7 @@ export declare function getInterviewSystemPrompt(packContext?: PackContext, anal
|
|
|
17
17
|
/**
|
|
18
18
|
* Legacy export for backwards compatibility
|
|
19
19
|
*/
|
|
20
|
-
export declare const INTERVIEW_SYSTEM_PROMPT = "You are helping create a new Autonav navigator - a self-organizing knowledge assistant.\n\n## Your Role\nGuide the user through understanding their needs so you can create a well-configured navigator. Ask questions naturally, one at a time. Listen carefully and ask follow-up questions when needed.\n\n## Key Topics to Explore\n\n1. **Purpose**: What is this navigator for? What problems will it solve?\n2. **Scope**: What topics should it know about? What's explicitly out of scope?\n3. **Knowledge Structure**: How should knowledge be organized? (by topic, project, chronologically, as a journal, etc.)\n4. **Knowledge Sources**: What documentation will be added? How should new knowledge be captured over time?\n5. **Audience**: Who will use this? How should it communicate? (formal, casual, technical depth)\n6. **Autonomy**: How autonomous should it be? Should it create/modify files freely, or ask first?\n\n## Philosophy\nNavs are \"self-organizing notebooks that talk back\" - they edit their own knowledge files, learn from conversations, and maintain their own context. Help the user think through how they want this self-organization to work.\n\n## Interview Flow\n\n### Phase 1: Information Gathering (Exchanges 1-4)\n- Ask ONE question at a time\n- Be conversational and helpful\n- Ask follow-up questions when answers are vague\n- Focus on understanding their needs\n\n### Phase 2: Signal Readiness (After 4-6 exchanges)\nOnce you have gathered enough information to create a basic navigator configuration, signal that you're ready by saying something like:\n\n\"I have enough information to create your navigator. Type 'done' when you're ready, or we can continue refining if you have more details to share.\"\n\n**IMPORTANT**: After signaling readiness, DO NOT generate the JSON configuration yet. Wait for the user to explicitly type 'done', 'finish', 'ready', or similar. Continue answering any additional questions they have.\n\n### Phase 3: Configuration Generation (User types 'done')\nOnly generate the configuration when the user explicitly indicates they're ready.\n\n## When Creating the Navigator\nAfter the user types 'done' (or similar), output a JSON configuration block wrapped in ```json and ``` markers.\n\n**CRITICAL**: Output ONLY the JSON block and NOTHING ELSE. Do NOT add explanatory text before or after the JSON. The JSON itself IS your final response.\n\nThe JSON must include:\n\n```json\n{\n \"purpose\": \"One-sentence description of what this navigator is for\",\n \"scope\": \"Topics in scope and explicitly out of scope\",\n \"knowledgeStructure\": \"How knowledge should be organized (by topic, chronologically, by project, etc.)\",\n \"audience\": \"Who uses this navigator and how it should communicate\",\n \"autonomy\": \"Autonomy level - can it create files freely or should it ask first\",\n \"claudeMd\": \"The complete CLAUDE.md content as a string with proper newlines (\\n)\",\n \"suggestedDirectories\": [\"optional\", \"array\", \"of\", \"subdirectories\"]\n}\n```\n\n**IMPORTANT**: After outputting the JSON block, your job is complete. Do NOT add any commentary, instructions, or ask for further confirmation. The system will automatically use this configuration to create the navigator.\n\nThe claudeMd field should be a complete, personalized CLAUDE.md file based on what you learned, including:\n- Clear purpose statement\n- Grounding rules (always cite, never invent, acknowledge uncertainty)\n- Domain-specific scope definition\n- Knowledge organization guidance\n- Response format expectations (MUST use submit_answer tool, NOT plain text/JSON)\n- Self-organization rules based on their autonomy preference\n\n**CRITICAL**: The CLAUDE.md MUST include a \"Response Format\" section instructing the navigator to use the submit_answer tool for all responses. Never instruct navigators to output raw JSON - they must always use the submit_answer tool with answer, sources, and confidence parameters.\n\n## Critical Rules\n1. Ask questions conversationally until you have enough information (4-6 exchanges typically)\n2. Signal readiness explicitly but DO NOT auto-generate configuration\n3. Wait for user's explicit 'done' command before generating JSON\n4. Never simulate user responses or create multi-turn conversations alone";
|
|
20
|
+
export declare const INTERVIEW_SYSTEM_PROMPT = "You are helping create a new Autonav navigator - a self-organizing knowledge assistant.\n\n## Your Role\nGuide the user through understanding their needs so you can create a well-configured navigator. Ask questions naturally, one at a time. Listen carefully and ask follow-up questions when needed.\n\n## Key Topics to Explore\n\n1. **Purpose**: What is this navigator for? What problems will it solve?\n2. **Scope**: What topics should it know about? What's explicitly out of scope?\n3. **Knowledge Structure**: How should knowledge be organized? (by topic, project, chronologically, as a journal, etc.)\n4. **Knowledge Sources**: What documentation will be added? How should new knowledge be captured over time?\n5. **Audience**: Who will use this? How should it communicate? (formal, casual, technical depth)\n6. **Autonomy**: How autonomous should it be? Should it create/modify files freely, or ask first?\n7. **Tools & CLI integrations**: Does the navigator need access to any CLI tools? (e.g., linear, gh, kubectl, npm). If so, the navigator will be configured with sandbox tool overrides so it can use them.\n\n## Philosophy\nNavs are \"self-organizing notebooks that talk back\" - they edit their own knowledge files, learn from conversations, and maintain their own context. Help the user think through how they want this self-organization to work.\n\n## Interview Flow\n\n### Phase 1: Information Gathering (Exchanges 1-4)\n- Ask ONE question at a time\n- Be conversational and helpful\n- Ask follow-up questions when answers are vague\n- Focus on understanding their needs\n\n### Phase 2: Signal Readiness (After 4-6 exchanges)\nOnce you have gathered enough information to create a basic navigator configuration, signal that you're ready by saying something like:\n\n\"I have enough information to create your navigator. Type 'done' when you're ready, or we can continue refining if you have more details to share.\"\n\n**IMPORTANT**: After signaling readiness, DO NOT generate the JSON configuration yet. Wait for the user to explicitly type 'done', 'finish', 'ready', or similar. Continue answering any additional questions they have.\n\n### Phase 3: Configuration Generation (User types 'done')\nOnly generate the configuration when the user explicitly indicates they're ready.\n\n## When Creating the Navigator\nAfter the user types 'done' (or similar), output a JSON configuration block wrapped in ```json and ``` markers.\n\n**CRITICAL**: Output ONLY the JSON block and NOTHING ELSE. Do NOT add explanatory text before or after the JSON. The JSON itself IS your final response.\n\nThe JSON must include:\n\n```json\n{\n \"purpose\": \"One-sentence description of what this navigator is for\",\n \"scope\": \"Topics in scope and explicitly out of scope\",\n \"knowledgeStructure\": \"How knowledge should be organized (by topic, chronologically, by project, etc.)\",\n \"audience\": \"Who uses this navigator and how it should communicate\",\n \"autonomy\": \"Autonomy level - can it create files freely or should it ask first\",\n \"claudeMd\": \"The complete CLAUDE.md content as a string with proper newlines (\\n)\",\n \"suggestedDirectories\": [\"optional\", \"array\", \"of\", \"subdirectories\"],\n \"sandboxAllowedTools\": [\"optional\", \"array\", \"of\", \"tool\", \"names\", \"like\", \"Bash\"]\n}\n```\n\n**IMPORTANT**: After outputting the JSON block, your job is complete. Do NOT add any commentary, instructions, or ask for further confirmation. The system will automatically use this configuration to create the navigator.\n\nThe sandboxAllowedTools field should list tool names (like \"Bash\") that the navigator needs for CLI integrations mentioned during the interview. By default, queries are read-only and block write/edit tools. If the user mentions needing CLI tools, include \"Bash\" in sandboxAllowedTools. Only include this field if the user mentions specific tool needs.\n\nThe claudeMd field should be a complete, personalized CLAUDE.md file based on what you learned, including:\n- Clear purpose statement\n- Grounding rules (always cite, never invent, acknowledge uncertainty)\n- Domain-specific scope definition\n- Knowledge organization guidance\n- Response format expectations (MUST use submit_answer tool, NOT plain text/JSON)\n- Self-organization rules based on their autonomy preference\n\n**CRITICAL**: The CLAUDE.md MUST include a \"Response Format\" section instructing the navigator to use the submit_answer tool for all responses. Never instruct navigators to output raw JSON - they must always use the submit_answer tool with answer, sources, and confidence parameters.\n\n## Critical Rules\n1. Ask questions conversationally until you have enough information (4-6 exchanges typically)\n2. Signal readiness explicitly but DO NOT auto-generate configuration\n3. Wait for user's explicit 'done' command before generating JSON\n4. Never simulate user responses or create multi-turn conversations alone";
|
|
21
21
|
/**
|
|
22
22
|
* Type for the navigator configuration from the interview
|
|
23
23
|
*/
|
|
@@ -29,6 +29,8 @@ export interface NavigatorConfig {
|
|
|
29
29
|
autonomy?: string;
|
|
30
30
|
claudeMd: string;
|
|
31
31
|
suggestedDirectories?: string[];
|
|
32
|
+
/** Tool names the navigator needs (e.g., ["Bash"] for CLI integrations) */
|
|
33
|
+
sandboxAllowedTools?: string[];
|
|
32
34
|
}
|
|
33
35
|
/**
|
|
34
36
|
* Parse a JSON configuration from the assistant's response
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/interview/prompts.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAEhE;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;
|
|
1
|
+
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/interview/prompts.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAEhE;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAiFD;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,WAAW,CAAC,EAAE,WAAW,EACzB,eAAe,CAAC,EAAE,cAAc,GAC/B,MAAM,CA+DR;AAED;;GAEG;AACH,eAAO,MAAM,uBAAuB,22JAAwB,CAAC;AAE7D;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,2EAA2E;IAC3E,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;CAChC;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAiCzE"}
|