hoomanjs 1.22.2 → 1.23.1
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 +39 -9
- package/dist/acp/acp-agent.js +48 -9
- package/dist/acp/acp-agent.js.map +1 -1
- package/dist/acp/approvals.d.ts +1 -1
- package/dist/acp/approvals.js +4 -3
- package/dist/acp/approvals.js.map +1 -1
- package/dist/acp/sessions/config-options.d.ts +6 -3
- package/dist/acp/sessions/config-options.js +46 -6
- package/dist/acp/sessions/config-options.js.map +1 -1
- package/dist/acp/sessions/store.d.ts +8 -0
- package/dist/acp/sessions/store.js.map +1 -1
- package/dist/chat/app.d.ts +1 -2
- package/dist/chat/app.js +209 -31
- package/dist/chat/app.js.map +1 -1
- package/dist/chat/approvals.d.ts +1 -3
- package/dist/chat/approvals.js +4 -3
- package/dist/chat/approvals.js.map +1 -1
- package/dist/chat/components/Composer.d.ts +3 -2
- package/dist/chat/components/Composer.js +5 -5
- package/dist/chat/components/Composer.js.map +1 -1
- package/dist/chat/components/PromptInput.d.ts +3 -2
- package/dist/chat/components/PromptInput.js +2 -1
- package/dist/chat/components/PromptInput.js.map +1 -1
- package/dist/chat/components/ScrollView.d.ts +5 -0
- package/dist/chat/components/ScrollView.js +8 -2
- package/dist/chat/components/ScrollView.js.map +1 -1
- package/dist/chat/components/SelectPicker.d.ts +11 -0
- package/dist/chat/components/SelectPicker.js +7 -0
- package/dist/chat/components/SelectPicker.js.map +1 -0
- package/dist/chat/components/SlashCommands.d.ts +2 -1
- package/dist/chat/components/SlashCommands.js +9 -3
- package/dist/chat/components/SlashCommands.js.map +1 -1
- package/dist/chat/components/StatusBar.d.ts +3 -1
- package/dist/chat/components/StatusBar.js +18 -2
- package/dist/chat/components/StatusBar.js.map +1 -1
- package/dist/chat/components/ThinkingStatus.js +1 -1
- package/dist/chat/components/ThinkingStatus.js.map +1 -1
- package/dist/chat/components/TranscriptViewport.js +1 -1
- package/dist/chat/components/TranscriptViewport.js.map +1 -1
- package/dist/chat/components/markdown/BlockRenderer.d.ts +6 -1
- package/dist/chat/components/markdown/BlockRenderer.js +16 -14
- package/dist/chat/components/markdown/BlockRenderer.js.map +1 -1
- package/dist/chat/components/markdown/CodeBlock.d.ts +3 -1
- package/dist/chat/components/markdown/CodeBlock.js +3 -3
- package/dist/chat/components/markdown/CodeBlock.js.map +1 -1
- package/dist/chat/components/markdown/MarkdownMessage.js +2 -2
- package/dist/chat/components/markdown/MarkdownMessage.js.map +1 -1
- package/dist/chat/components/markdown/MarkdownTable.d.ts +2 -1
- package/dist/chat/components/markdown/MarkdownTable.js +2 -2
- package/dist/chat/components/markdown/MarkdownTable.js.map +1 -1
- package/dist/chat/components/prompt-input/hooks/usePromptInputController.d.ts +1 -1
- package/dist/chat/components/prompt-input/hooks/usePromptInputController.js.map +1 -1
- package/dist/chat/components/prompt-input/usePromptInputController.d.ts +11 -1
- package/dist/chat/components/prompt-input/usePromptInputController.js +55 -3
- package/dist/chat/components/prompt-input/usePromptInputController.js.map +1 -1
- package/dist/chat/index.d.ts +0 -1
- package/dist/chat/index.js +1 -1
- package/dist/chat/index.js.map +1 -1
- package/dist/cli.js +38 -16
- package/dist/cli.js.map +1 -1
- package/dist/core/agent/index.d.ts +4 -0
- package/dist/core/agent/index.js +25 -6
- package/dist/core/agent/index.js.map +1 -1
- package/dist/core/agent/mode-aware-tool-registry.d.ts +10 -0
- package/dist/core/agent/mode-aware-tool-registry.js +21 -0
- package/dist/core/agent/mode-aware-tool-registry.js.map +1 -0
- package/dist/core/agent/sync-tool-registry-mode.d.ts +6 -0
- package/dist/core/agent/sync-tool-registry-mode.js +15 -0
- package/dist/core/agent/sync-tool-registry-mode.js.map +1 -0
- package/dist/core/agents/definitions.d.ts +1 -1
- package/dist/core/agents/definitions.js +2 -17
- package/dist/core/agents/definitions.js.map +1 -1
- package/dist/core/agents/tools.d.ts +1 -1
- package/dist/core/agents/tools.js +1 -1
- package/dist/core/index.d.ts +5 -0
- package/dist/core/index.js +2 -0
- package/dist/core/index.js.map +1 -1
- package/dist/core/prompts/agents/research.md +15 -14
- package/dist/core/prompts/modes/ask.md +21 -0
- package/dist/core/prompts/{agents → modes}/plan.md +6 -8
- package/dist/core/prompts/session-mode-appendix.d.ts +5 -0
- package/dist/core/prompts/session-mode-appendix.js +53 -0
- package/dist/core/prompts/session-mode-appendix.js.map +1 -0
- package/dist/core/prompts/static/planning.md +34 -0
- package/dist/core/prompts/static/subagents.md +2 -2
- package/dist/core/prompts/system.js +3 -2
- package/dist/core/prompts/system.js.map +1 -1
- package/dist/core/session-config.d.ts +0 -3
- package/dist/core/session-config.js +0 -7
- package/dist/core/session-config.js.map +1 -1
- package/dist/core/state/agent-app-state.d.ts +6 -0
- package/dist/core/state/agent-app-state.js +11 -0
- package/dist/core/state/agent-app-state.js.map +1 -0
- package/dist/core/state/plan.d.ts +23 -0
- package/dist/core/state/plan.js +34 -0
- package/dist/core/state/plan.js.map +1 -0
- package/dist/core/state/session-mode.d.ts +23 -0
- package/dist/core/state/session-mode.js +21 -0
- package/dist/core/state/session-mode.js.map +1 -0
- package/dist/core/state/tool-approvals.d.ts +13 -1
- package/dist/core/state/tool-approvals.js +138 -5
- package/dist/core/state/tool-approvals.js.map +1 -1
- package/dist/core/state/yolo.d.ts +12 -0
- package/dist/core/state/yolo.js +9 -0
- package/dist/core/state/yolo.js.map +1 -0
- package/dist/core/tools/filesystem.js +1 -19
- package/dist/core/tools/filesystem.js.map +1 -1
- package/dist/core/tools/index.d.ts +1 -0
- package/dist/core/tools/index.js +1 -0
- package/dist/core/tools/index.js.map +1 -1
- package/dist/core/tools/plan.d.ts +4 -0
- package/dist/core/tools/plan.js +113 -0
- package/dist/core/tools/plan.js.map +1 -0
- package/dist/core/tools/wiki.d.ts +2 -2
- package/dist/core/utils/normalize-user-path.d.ts +4 -0
- package/dist/core/utils/normalize-user-path.js +31 -0
- package/dist/core/utils/normalize-user-path.js.map +1 -0
- package/dist/core/utils/paths.d.ts +1 -0
- package/dist/core/utils/paths.js +3 -0
- package/dist/core/utils/paths.js.map +1 -1
- package/dist/daemon/approvals.d.ts +1 -3
- package/dist/daemon/approvals.js +4 -3
- package/dist/daemon/approvals.js.map +1 -1
- package/dist/daemon/index.d.ts +0 -1
- package/dist/daemon/index.js +0 -3
- package/dist/daemon/index.js.map +1 -1
- package/dist/exec/approvals.d.ts +1 -3
- package/dist/exec/approvals.js +4 -3
- package/dist/exec/approvals.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/chat/components/ModelPicker.d.ts +0 -10
- package/dist/chat/components/ModelPicker.js +0 -7
- package/dist/chat/components/ModelPicker.js.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -8,6 +8,7 @@ export type { AttachmentBinaryFallback, AttachmentMediaBlocks, AttachmentReadRes
|
|
|
8
8
|
export { detectDocumentFormat, detectImageFormat, detectVideoFormat, } from "./core/utils/file-formats.js";
|
|
9
9
|
export { getCwd, runWithCwd } from "./core/utils/cwd-context.js";
|
|
10
10
|
export { create as createAgent } from "./core/agent/index.js";
|
|
11
|
+
export { applySessionMode } from "./core/agent/sync-tool-registry-mode.js";
|
|
11
12
|
export { HOOMAN_CHANNEL, HOOMAN_CHANNEL_PERMISSION, Manager as McpManager, createMcpConfig, createMcpManager, } from "./core/mcp/index.js";
|
|
12
13
|
export type { ChannelMessage, ChannelPermissionBehavior, ChannelSubscription, ChannelSubscriptionHandle, NamedMcpTransport, } from "./core/mcp/index.js";
|
|
13
14
|
export { Config as McpConfig, type McpServersFile } from "./core/mcp/config.js";
|
|
@@ -47,6 +48,8 @@ export { BUILTIN_AGENT_CONFIGS, BUILTIN_AGENT_KINDS, RUN_AGENTS_TOOL_NAME, creat
|
|
|
47
48
|
export type { AgentConfig, AgentDefinition, AgentJob, AgentJobResult, AgentKind, RunAgentJobsResult, } from "./core/agents/index.js";
|
|
48
49
|
export { EXIT_REQUESTED_CODE, EXIT_REQUESTED_STATE_KEY, consumeExitRequest, isExitRequested, requestExit, } from "./core/state/exit-request.js";
|
|
49
50
|
export { INTERNAL_ALWAYS_ALLOWED as TOOL_APPROVAL_INTERNAL_ALWAYS_ALLOWED, allowToolForSession, getSessionAllowedTools, isToolSessionAllowed, } from "./core/state/tool-approvals.js";
|
|
51
|
+
export { YOLO_STATE_KEY, isYoloEnabled, setYoloEnabled, } from "./core/state/yolo.js";
|
|
52
|
+
export { MODE_STATE_KEY, getModeState, normalizeSessionMode, setSessionMode, type SessionMode, } from "./core/state/session-mode.js";
|
|
50
53
|
export { TODO_ITEMS_STATE_KEY, TODO_VISIBLE_STATE_KEY, TodoItemSchema, TodoStatusSchema, clearTodoState, getTodoViewState, setTodoState, summarizeTodos, } from "./core/state/todos.js";
|
|
51
54
|
export type { TodoItem, TodoStatus, TodoViewState, } from "./core/state/todos.js";
|
|
52
55
|
export { readThinkingState, writeThinkingState, } from "./core/state/thought-process.js";
|
package/dist/index.js
CHANGED
|
@@ -7,6 +7,7 @@ export { attachmentDiagnosticBlock, attachmentPathsToPromptBlocks, normalizeAtta
|
|
|
7
7
|
export { detectDocumentFormat, detectImageFormat, detectVideoFormat, } from "./core/utils/file-formats.js";
|
|
8
8
|
export { getCwd, runWithCwd } from "./core/utils/cwd-context.js";
|
|
9
9
|
export { create as createAgent } from "./core/agent/index.js";
|
|
10
|
+
export { applySessionMode } from "./core/agent/sync-tool-registry-mode.js";
|
|
10
11
|
export { HOOMAN_CHANNEL, HOOMAN_CHANNEL_PERMISSION, Manager as McpManager, createMcpConfig, createMcpManager, } from "./core/mcp/index.js";
|
|
11
12
|
export { Config as McpConfig } from "./core/mcp/config.js";
|
|
12
13
|
export { McpTransportSchema, SseSchema, StdioSchema, StreamableHttpSchema, } from "./core/mcp/types.js";
|
|
@@ -34,6 +35,8 @@ export { DEFAULT_DEDUPE_THRESHOLD, DEFAULT_HALF_LIFE_MS, DEFAULT_REINFORCEMENT_S
|
|
|
34
35
|
export { BUILTIN_AGENT_CONFIGS, BUILTIN_AGENT_KINDS, RUN_AGENTS_TOOL_NAME, createRunAgentsTools, loadBuiltInAgentDefinitions, runAgentJobs, } from "./core/agents/index.js";
|
|
35
36
|
export { EXIT_REQUESTED_CODE, EXIT_REQUESTED_STATE_KEY, consumeExitRequest, isExitRequested, requestExit, } from "./core/state/exit-request.js";
|
|
36
37
|
export { INTERNAL_ALWAYS_ALLOWED as TOOL_APPROVAL_INTERNAL_ALWAYS_ALLOWED, allowToolForSession, getSessionAllowedTools, isToolSessionAllowed, } from "./core/state/tool-approvals.js";
|
|
38
|
+
export { YOLO_STATE_KEY, isYoloEnabled, setYoloEnabled, } from "./core/state/yolo.js";
|
|
39
|
+
export { MODE_STATE_KEY, getModeState, normalizeSessionMode, setSessionMode, } from "./core/state/session-mode.js";
|
|
37
40
|
export { TODO_ITEMS_STATE_KEY, TODO_VISIBLE_STATE_KEY, TodoItemSchema, TodoStatusSchema, clearTodoState, getTodoViewState, setTodoState, summarizeTodos, } from "./core/state/todos.js";
|
|
38
41
|
export { readThinkingState, writeThinkingState, } from "./core/state/thought-process.js";
|
|
39
42
|
export { setFileToolDisplay, takeFileToolDisplay, } from "./core/state/file-tool-display.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,mDAAmD;AAEnD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAavE,OAAO,EACL,eAAe,EACf,QAAQ,EACR,cAAc,EACd,kBAAkB,EAClB,WAAW,EACX,YAAY,EACZ,UAAU,GACX,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,yBAAyB,EACzB,6BAA6B,EAC7B,wBAAwB,EACxB,8BAA8B,GAC/B,MAAM,6BAA6B,CAAC;AAMrC,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAEjE,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
type ModelPickerItem = {
|
|
2
|
-
label: string;
|
|
3
|
-
value: string;
|
|
4
|
-
};
|
|
5
|
-
type ModelPickerProps = {
|
|
6
|
-
items: ModelPickerItem[];
|
|
7
|
-
onSelect: (value: string) => void;
|
|
8
|
-
};
|
|
9
|
-
export declare function ModelPicker({ items, onSelect }: ModelPickerProps): import("react/jsx-runtime").JSX.Element;
|
|
10
|
-
export {};
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { Box, Text } from "ink";
|
|
3
|
-
import SelectInput from "ink-select-input";
|
|
4
|
-
export function ModelPicker({ items, onSelect }) {
|
|
5
|
-
return (_jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { bold: true, children: "Choose Model" }), _jsx(SelectInput, { items: items, onSelect: (item) => onSelect(item.value) }), _jsx(Box, { marginTop: 1, children: _jsx(Text, { color: "gray", children: "up/down choose \u2022 enter select \u2022 esc cancel" }) })] }));
|
|
6
|
-
}
|
|
7
|
-
//# sourceMappingURL=ModelPicker.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ModelPicker.js","sourceRoot":"","sources":["../../../src/chat/components/ModelPicker.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAY3C,MAAM,UAAU,WAAW,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAoB;IAC/D,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,KAAC,IAAI,IAAC,IAAI,mCAAoB,EAC9B,KAAC,WAAW,IACV,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GACxC,EACF,KAAC,GAAG,IAAC,SAAS,EAAE,CAAC,YACf,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,qEAAkD,GAChE,IACF,CACP,CAAC;AACJ,CAAC"}
|