hoomanjs 1.29.2 → 1.30.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 +216 -69
- package/dist/acp/acp-agent.d.ts +5 -5
- package/dist/acp/acp-agent.js +55 -54
- package/dist/acp/acp-agent.js.map +1 -1
- package/dist/acp/approvals.d.ts +3 -3
- package/dist/acp/approvals.js +73 -115
- package/dist/acp/approvals.js.map +1 -1
- package/dist/acp/sessions/options.js +11 -25
- package/dist/acp/sessions/options.js.map +1 -1
- package/dist/acp/utils/tool-kind.js +1 -5
- package/dist/acp/utils/tool-kind.js.map +1 -1
- package/dist/chat/app.d.ts +5 -1
- package/dist/chat/app.js +322 -202
- package/dist/chat/app.js.map +1 -1
- package/dist/chat/approvals.d.ts +4 -3
- package/dist/chat/approvals.js +11 -45
- package/dist/chat/approvals.js.map +1 -1
- package/dist/chat/components/ChatMessage.d.ts +1 -2
- package/dist/chat/components/ChatMessage.js +4 -5
- package/dist/chat/components/ChatMessage.js.map +1 -1
- package/dist/chat/components/EmptyChatBanner.js +2 -3
- package/dist/chat/components/EmptyChatBanner.js.map +1 -1
- package/dist/chat/components/StatusBar.js +6 -2
- package/dist/chat/components/StatusBar.js.map +1 -1
- package/dist/chat/components/ThoughtEvent.d.ts +6 -0
- package/dist/chat/components/ThoughtEvent.js +30 -0
- package/dist/chat/components/ThoughtEvent.js.map +1 -0
- package/dist/chat/components/ToolEvent.js +1 -1
- package/dist/chat/components/ToolEvent.js.map +1 -1
- package/dist/chat/components/Transcript.d.ts +7 -2
- package/dist/chat/components/Transcript.js +6 -2
- package/dist/chat/components/Transcript.js.map +1 -1
- package/dist/chat/components/markdown/BlockRenderer.js +7 -7
- package/dist/chat/components/markdown/BlockRenderer.js.map +1 -1
- package/dist/chat/components/markdown/MarkdownMessage.js +1 -1
- package/dist/chat/components/markdown/MarkdownMessage.js.map +1 -1
- package/dist/chat/components/shared.js +2 -0
- package/dist/chat/components/shared.js.map +1 -1
- package/dist/chat/index.d.ts +4 -0
- package/dist/chat/index.js +17 -3
- package/dist/chat/index.js.map +1 -1
- package/dist/chat/steering.d.ts +20 -0
- package/dist/chat/steering.js +67 -0
- package/dist/chat/steering.js.map +1 -0
- package/dist/chat/types.d.ts +5 -1
- package/dist/cli.js +91 -13
- package/dist/cli.js.map +1 -1
- package/dist/configure/app.d.ts +1 -1
- package/dist/configure/app.js +581 -303
- package/dist/configure/app.js.map +1 -1
- package/dist/configure/components/MenuScreen.d.ts +4 -2
- package/dist/configure/components/MenuScreen.js +33 -6
- package/dist/configure/components/MenuScreen.js.map +1 -1
- package/dist/configure/components/SelectMenuItem.d.ts +1 -0
- package/dist/configure/components/SelectMenuItem.js +19 -10
- package/dist/configure/components/SelectMenuItem.js.map +1 -1
- package/dist/configure/index.js +4 -2
- package/dist/configure/index.js.map +1 -1
- package/dist/configure/types.d.ts +14 -12
- package/dist/configure/utils.d.ts +2 -0
- package/dist/configure/utils.js +21 -2
- package/dist/configure/utils.js.map +1 -1
- package/dist/core/agent/index.d.ts +3 -3
- package/dist/core/agent/index.js +20 -25
- package/dist/core/agent/index.js.map +1 -1
- package/dist/core/agent/mode-aware-tool-registry.js +2 -1
- package/dist/core/agent/mode-aware-tool-registry.js.map +1 -1
- package/dist/core/approvals/intervention.d.ts +34 -0
- package/dist/core/approvals/intervention.js +94 -0
- package/dist/core/approvals/intervention.js.map +1 -0
- package/dist/core/config.d.ts +49 -28
- package/dist/core/config.js +85 -26
- package/dist/core/config.js.map +1 -1
- package/dist/core/context/index.d.ts +11 -2
- package/dist/core/context/index.js +54 -4
- package/dist/core/context/index.js.map +1 -1
- package/dist/core/context/model-extractor.d.ts +13 -0
- package/dist/core/context/model-extractor.js +98 -0
- package/dist/core/context/model-extractor.js.map +1 -0
- package/dist/core/index.d.ts +6 -2
- package/dist/core/index.js +6 -1
- package/dist/core/index.js.map +1 -1
- package/dist/core/mcp/config.d.ts +28 -0
- package/dist/core/mcp/index.d.ts +5 -3
- package/dist/core/mcp/index.js +4 -2
- package/dist/core/mcp/index.js.map +1 -1
- package/dist/core/mcp/manager.d.ts +14 -1
- package/dist/core/mcp/manager.js +76 -4
- package/dist/core/mcp/manager.js.map +1 -1
- package/dist/core/mcp/oauth/callback-server.d.ts +16 -0
- package/dist/core/mcp/oauth/callback-server.js +134 -0
- package/dist/core/mcp/oauth/callback-server.js.map +1 -0
- package/dist/core/mcp/oauth/identity.d.ts +9 -0
- package/dist/core/mcp/oauth/identity.js +31 -0
- package/dist/core/mcp/oauth/identity.js.map +1 -0
- package/dist/core/mcp/oauth/index.d.ts +11 -0
- package/dist/core/mcp/oauth/index.js +15 -0
- package/dist/core/mcp/oauth/index.js.map +1 -0
- package/dist/core/mcp/oauth/provider.d.ts +43 -0
- package/dist/core/mcp/oauth/provider.js +203 -0
- package/dist/core/mcp/oauth/provider.js.map +1 -0
- package/dist/core/mcp/oauth/service.d.ts +29 -0
- package/dist/core/mcp/oauth/service.js +139 -0
- package/dist/core/mcp/oauth/service.js.map +1 -0
- package/dist/core/mcp/oauth/store.d.ts +14 -0
- package/dist/core/mcp/oauth/store.js +86 -0
- package/dist/core/mcp/oauth/store.js.map +1 -0
- package/dist/core/mcp/oauth/types.d.ts +87 -0
- package/dist/core/mcp/oauth/types.js +45 -0
- package/dist/core/mcp/oauth/types.js.map +1 -0
- package/dist/core/mcp/types.d.ts +56 -0
- package/dist/core/mcp/types.js +3 -0
- package/dist/core/mcp/types.js.map +1 -1
- package/dist/core/memory/file-store.d.ts +24 -0
- package/dist/core/memory/file-store.js +151 -0
- package/dist/core/memory/file-store.js.map +1 -0
- package/dist/core/memory/index.d.ts +2 -5
- package/dist/core/memory/index.js +2 -3
- package/dist/core/memory/index.js.map +1 -1
- package/dist/core/memory/runtime.d.ts +4 -0
- package/dist/core/memory/runtime.js +37 -0
- package/dist/core/memory/runtime.js.map +1 -0
- package/dist/core/models/anthropic.js +24 -1
- package/dist/core/models/anthropic.js.map +1 -1
- package/dist/core/models/moonshot.js +33 -1
- package/dist/core/models/moonshot.js.map +1 -1
- package/dist/core/modes/definitions.d.ts +19 -0
- package/dist/core/modes/definitions.js +99 -0
- package/dist/core/modes/definitions.js.map +1 -0
- package/dist/core/modes/index.d.ts +3 -0
- package/dist/core/modes/index.js +4 -0
- package/dist/core/modes/index.js.map +1 -0
- package/dist/core/modes/registry.d.ts +9 -0
- package/dist/core/modes/registry.js +57 -0
- package/dist/core/modes/registry.js.map +1 -0
- package/dist/core/modes/schema.d.ts +5 -0
- package/dist/core/modes/schema.js +6 -0
- package/dist/core/modes/schema.js.map +1 -0
- package/dist/core/prompts/agents/research.md +8 -8
- package/dist/core/prompts/bundled.d.ts +3 -0
- package/dist/core/prompts/bundled.js +14 -0
- package/dist/core/prompts/bundled.js.map +1 -0
- package/dist/core/prompts/environment.d.ts +0 -1
- package/dist/core/prompts/environment.js +0 -2
- package/dist/core/prompts/environment.js.map +1 -1
- package/dist/core/prompts/index.d.ts +1 -4
- package/dist/core/prompts/index.js +1 -7
- package/dist/core/prompts/index.js.map +1 -1
- package/dist/core/prompts/modes/agent.md +3 -0
- package/dist/core/prompts/modes/ask.md +5 -3
- package/dist/core/prompts/modes/plan.md +2 -2
- package/dist/core/prompts/session-mode-appendix.d.ts +3 -9
- package/dist/core/prompts/session-mode-appendix.js +32 -69
- package/dist/core/prompts/session-mode-appendix.js.map +1 -1
- package/dist/core/prompts/static/environment.md +2 -2
- package/dist/core/prompts/static/init.md +25 -0
- package/dist/core/prompts/static/memory.md +9 -123
- package/dist/core/prompts/static/planning.md +1 -1
- package/dist/core/prompts/static/skills.md +6 -5
- package/dist/core/prompts/static/subagents.md +2 -2
- package/dist/core/prompts/static/web-search.md +2 -1
- package/dist/core/prompts/system.js +8 -22
- package/dist/core/prompts/system.js.map +1 -1
- package/dist/core/skills/built-in/hooman-config/SKILL.md +105 -32
- package/dist/core/skills/built-in/hooman-skills/SKILL.md +1 -1
- package/dist/core/skills/index.d.ts +1 -0
- package/dist/core/skills/index.js +1 -0
- package/dist/core/skills/index.js.map +1 -1
- package/dist/core/skills/plugin.d.ts +7 -0
- package/dist/core/skills/plugin.js +40 -0
- package/dist/core/skills/plugin.js.map +1 -0
- package/dist/core/state/agent-app-state.d.ts +1 -1
- package/dist/core/state/agent-app-state.js +1 -1
- package/dist/core/state/session-mode.d.ts +2 -9
- package/dist/core/state/session-mode.js +4 -12
- package/dist/core/state/session-mode.js.map +1 -1
- package/dist/core/state/tool-approvals.d.ts +4 -8
- package/dist/core/state/tool-approvals.js +14 -76
- package/dist/core/state/tool-approvals.js.map +1 -1
- package/dist/core/subagents/index.d.ts +3 -0
- package/dist/core/subagents/index.js +4 -0
- package/dist/core/subagents/index.js.map +1 -0
- package/dist/core/subagents/research.d.ts +16 -0
- package/dist/core/subagents/research.js +58 -0
- package/dist/core/subagents/research.js.map +1 -0
- package/dist/core/{agents → subagents}/runner.d.ts +6 -5
- package/dist/core/{agents → subagents}/runner.js +8 -10
- package/dist/core/subagents/runner.js.map +1 -0
- package/dist/core/{agents/tools.d.ts → subagents/tool.d.ts} +6 -6
- package/dist/core/{agents/tools.js → subagents/tool.js} +14 -16
- package/dist/core/subagents/tool.js.map +1 -0
- package/dist/core/tools/plan.js +2 -6
- package/dist/core/tools/plan.js.map +1 -1
- package/dist/core/tools/time.js +1 -1
- package/dist/core/tools/time.js.map +1 -1
- package/dist/core/utils/browser.d.ts +1 -0
- package/dist/core/utils/browser.js +25 -0
- package/dist/core/utils/browser.js.map +1 -0
- package/dist/core/utils/paths.d.ts +2 -4
- package/dist/core/utils/paths.js +2 -4
- package/dist/core/utils/paths.js.map +1 -1
- package/dist/daemon/approvals.d.ts +2 -2
- package/dist/daemon/approvals.js +51 -56
- package/dist/daemon/approvals.js.map +1 -1
- package/dist/daemon/index.js +9 -6
- package/dist/daemon/index.js.map +1 -1
- package/dist/exec/approvals.d.ts +2 -4
- package/dist/exec/approvals.js +16 -48
- package/dist/exec/approvals.js.map +1 -1
- package/dist/index.d.ts +13 -18
- package/dist/index.js +9 -11
- package/dist/index.js.map +1 -1
- package/package.json +5 -18
- package/dist/chat/components/ScrollView.d.ts +0 -106
- package/dist/chat/components/ScrollView.js +0 -80
- package/dist/chat/components/ScrollView.js.map +0 -1
- package/dist/chat/components/TranscriptViewport.d.ts +0 -9
- package/dist/chat/components/TranscriptViewport.js +0 -124
- package/dist/chat/components/TranscriptViewport.js.map +0 -1
- package/dist/core/agents/definitions.d.ts +0 -12
- package/dist/core/agents/definitions.js +0 -20
- package/dist/core/agents/definitions.js.map +0 -1
- package/dist/core/agents/index.d.ts +0 -4
- package/dist/core/agents/index.js +0 -5
- package/dist/core/agents/index.js.map +0 -1
- package/dist/core/agents/registry.d.ts +0 -5
- package/dist/core/agents/registry.js +0 -84
- package/dist/core/agents/registry.js.map +0 -1
- package/dist/core/agents/runner.js.map +0 -1
- package/dist/core/agents/tools.js.map +0 -1
- package/dist/core/inference/embedder.d.ts +0 -26
- package/dist/core/inference/embedder.js +0 -85
- package/dist/core/inference/embedder.js.map +0 -1
- package/dist/core/inference/index.d.ts +0 -9
- package/dist/core/inference/index.js +0 -13
- package/dist/core/inference/index.js.map +0 -1
- package/dist/core/inference/loader.d.ts +0 -16
- package/dist/core/inference/loader.js +0 -129
- package/dist/core/inference/loader.js.map +0 -1
- package/dist/core/inference/reranker.d.ts +0 -28
- package/dist/core/inference/reranker.js +0 -66
- package/dist/core/inference/reranker.js.map +0 -1
- package/dist/core/memory/brain.d.ts +0 -25
- package/dist/core/memory/brain.js +0 -137
- package/dist/core/memory/brain.js.map +0 -1
- package/dist/core/memory/database.d.ts +0 -4
- package/dist/core/memory/database.js +0 -87
- package/dist/core/memory/database.js.map +0 -1
- package/dist/core/memory/tools.d.ts +0 -16
- package/dist/core/memory/tools.js +0 -110
- package/dist/core/memory/tools.js.map +0 -1
- package/dist/core/memory/types.d.ts +0 -11
- package/dist/core/memory/types.js +0 -2
- package/dist/core/memory/types.js.map +0 -1
- package/dist/core/prompts/skills.d.ts +0 -15
- package/dist/core/prompts/skills.js +0 -92
- package/dist/core/prompts/skills.js.map +0 -1
- package/dist/core/prompts/static/wiki.md +0 -25
- package/dist/core/wiki/converters.d.ts +0 -12
- package/dist/core/wiki/converters.js +0 -73
- package/dist/core/wiki/converters.js.map +0 -1
- package/dist/core/wiki/database.d.ts +0 -39
- package/dist/core/wiki/database.js +0 -177
- package/dist/core/wiki/database.js.map +0 -1
- package/dist/core/wiki/index.d.ts +0 -7
- package/dist/core/wiki/index.js +0 -5
- package/dist/core/wiki/index.js.map +0 -1
- package/dist/core/wiki/storage.d.ts +0 -38
- package/dist/core/wiki/storage.js +0 -206
- package/dist/core/wiki/storage.js.map +0 -1
- package/dist/core/wiki/tools.d.ts +0 -5
- package/dist/core/wiki/tools.js +0 -32
- package/dist/core/wiki/tools.js.map +0 -1
|
@@ -2,11 +2,9 @@ export declare const basePath: () => string;
|
|
|
2
2
|
export declare const configJsonPath: () => string;
|
|
3
3
|
export declare const instructionsMdPath: () => string;
|
|
4
4
|
export declare const mcpJsonPath: () => string;
|
|
5
|
+
export declare const mcpOauthJsonPath: () => string;
|
|
5
6
|
export declare const sessionsPath: () => string;
|
|
7
|
+
export declare const memoryPath: () => string;
|
|
6
8
|
export declare const attachmentsPath: () => string;
|
|
7
9
|
export declare const plansPath: () => string;
|
|
8
10
|
export declare const skillsPath: () => string;
|
|
9
|
-
export declare const wikiPath: () => string;
|
|
10
|
-
export declare const wikiDbPath: () => string;
|
|
11
|
-
export declare const memoryDbPath: () => string;
|
|
12
|
-
export declare const modelsCachePath: () => string;
|
package/dist/core/utils/paths.js
CHANGED
|
@@ -12,12 +12,10 @@ export const basePath = () => {
|
|
|
12
12
|
export const configJsonPath = () => join(basePath(), "config.json");
|
|
13
13
|
export const instructionsMdPath = () => join(basePath(), "instructions.md");
|
|
14
14
|
export const mcpJsonPath = () => join(basePath(), "mcp.json");
|
|
15
|
+
export const mcpOauthJsonPath = () => join(basePath(), "mcp-oauth.json");
|
|
15
16
|
export const sessionsPath = () => join(basePath(), "sessions");
|
|
17
|
+
export const memoryPath = () => join(basePath(), "memory");
|
|
16
18
|
export const attachmentsPath = () => join(basePath(), "attachments");
|
|
17
19
|
export const plansPath = () => join(basePath(), "plans");
|
|
18
20
|
export const skillsPath = () => join(basePath(), "skills");
|
|
19
|
-
export const wikiPath = () => join(basePath(), "wiki");
|
|
20
|
-
export const wikiDbPath = () => join(wikiPath(), "content.sqlite");
|
|
21
|
-
export const memoryDbPath = () => join(basePath(), "memory.sqlite");
|
|
22
|
-
export const modelsCachePath = () => join(basePath(), ".models");
|
|
23
21
|
//# sourceMappingURL=paths.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paths.js","sourceRoot":"","sources":["../../../src/core/utils/paths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,MAAM,UAAU,GAAG,SAAS,CAAC;AAC7B,MAAM,eAAe,GAAG,aAAa,CAAC;AAEtC,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,EAAE;IAC3B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,CAAC;IACtD,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;AACrC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,aAAa,CAAC,CAAC;AAEpE,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,iBAAiB,CAAC,CAAC;AAE5E,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,UAAU,CAAC,CAAC;AAE9D,MAAM,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"paths.js","sourceRoot":"","sources":["../../../src/core/utils/paths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,MAAM,UAAU,GAAG,SAAS,CAAC;AAC7B,MAAM,eAAe,GAAG,aAAa,CAAC;AAEtC,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,EAAE;IAC3B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,CAAC;IACtD,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;AACrC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,aAAa,CAAC,CAAC;AAEpE,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,iBAAiB,CAAC,CAAC;AAE5E,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,UAAU,CAAC,CAAC;AAE9D,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,gBAAgB,CAAC,CAAC;AAEzE,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,UAAU,CAAC,CAAC;AAE/D,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,QAAQ,CAAC,CAAC;AAE3D,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,aAAa,CAAC,CAAC;AAErE,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC;AAEzD,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,QAAQ,CAAC,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { HoomanToolApprovalIntervention } from "../core/approvals/intervention.js";
|
|
2
2
|
import type { Manager as McpManager } from "../core/mcp/index.js";
|
|
3
|
-
export declare function
|
|
3
|
+
export declare function createDaemonApprovalIntervention(manager: McpManager): HoomanToolApprovalIntervention;
|
package/dist/daemon/approvals.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { isYoloEnabled } from "../core/state/yolo.js";
|
|
1
|
+
import { HoomanToolApprovalIntervention } from "../core/approvals/intervention.js";
|
|
3
2
|
const TOOL_DESCRIPTION_PREVIEW_LIMIT = 50;
|
|
4
3
|
const TOOL_ARGS_PREVIEW_LIMIT = 50;
|
|
5
4
|
function randomRequestId() {
|
|
@@ -24,8 +23,8 @@ function inputPreview(input) {
|
|
|
24
23
|
return truncateWithHiddenCharCount(String(input), TOOL_ARGS_PREVIEW_LIMIT);
|
|
25
24
|
}
|
|
26
25
|
}
|
|
27
|
-
function readOrigin(
|
|
28
|
-
const raw =
|
|
26
|
+
function readOrigin(rawAgent) {
|
|
27
|
+
const raw = rawAgent.appState.get("origin");
|
|
29
28
|
if (!raw || typeof raw !== "object") {
|
|
30
29
|
return null;
|
|
31
30
|
}
|
|
@@ -45,57 +44,53 @@ function readOrigin(agent) {
|
|
|
45
44
|
thread: text(entry.thread),
|
|
46
45
|
};
|
|
47
46
|
}
|
|
48
|
-
export function
|
|
49
|
-
return
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
return;
|
|
97
|
-
}
|
|
98
|
-
event.cancel = `Tool "${name}" was rejected by remote approval.`;
|
|
99
|
-
};
|
|
47
|
+
export function createDaemonApprovalIntervention(manager) {
|
|
48
|
+
return new HoomanToolApprovalIntervention({
|
|
49
|
+
ask: async (request, event) => {
|
|
50
|
+
const origin = readOrigin(event.agent);
|
|
51
|
+
if (!origin?.server) {
|
|
52
|
+
return {
|
|
53
|
+
decision: "reject",
|
|
54
|
+
reason: `Tool "${request.toolName}" was denied: missing daemon origin context.`,
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
const supported = await manager.supportsChannelPermission(origin.server);
|
|
58
|
+
if (!supported) {
|
|
59
|
+
return {
|
|
60
|
+
decision: "reject",
|
|
61
|
+
reason: `Tool "${request.toolName}" was denied: MCP server "${origin.server}" does not support hooman/channel/permission.`,
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
try {
|
|
65
|
+
const behavior = await manager.requestChannelPermission(origin.server, {
|
|
66
|
+
requestId: randomRequestId(),
|
|
67
|
+
tool: request.toolName,
|
|
68
|
+
description: truncateWithEllipsis(request.description?.trim() ??
|
|
69
|
+
`Run tool "${request.toolName}" in daemon mode.`, TOOL_DESCRIPTION_PREVIEW_LIMIT),
|
|
70
|
+
preview: inputPreview(request.input),
|
|
71
|
+
source: origin.source,
|
|
72
|
+
user: origin.user,
|
|
73
|
+
session: origin.session,
|
|
74
|
+
thread: origin.thread,
|
|
75
|
+
});
|
|
76
|
+
if (behavior === "allow_once") {
|
|
77
|
+
return "allow";
|
|
78
|
+
}
|
|
79
|
+
if (behavior === "allow_always") {
|
|
80
|
+
return "always";
|
|
81
|
+
}
|
|
82
|
+
return {
|
|
83
|
+
decision: "reject",
|
|
84
|
+
reason: `Tool "${request.toolName}" was rejected by remote approval.`,
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
catch (error) {
|
|
88
|
+
return {
|
|
89
|
+
decision: "reject",
|
|
90
|
+
reason: `Tool "${request.toolName}" was denied: failed to request permission (${error instanceof Error ? error.message : String(error)}).`,
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
});
|
|
100
95
|
}
|
|
101
96
|
//# sourceMappingURL=approvals.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"approvals.js","sourceRoot":"","sources":["../../src/daemon/approvals.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"approvals.js","sourceRoot":"","sources":["../../src/daemon/approvals.ts"],"names":[],"mappings":"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"}
|
package/dist/daemon/index.js
CHANGED
|
@@ -2,6 +2,7 @@ import { stderr } from "node:process";
|
|
|
2
2
|
import { Message, TextBlock, } from "@strands-agents/sdk";
|
|
3
3
|
import { HOOMAN_CHANNEL } from "../core/mcp/index.js";
|
|
4
4
|
import { consumeExitRequest } from "../core/state/exit-request.js";
|
|
5
|
+
import { runWithAgentMemoryScope } from "../core/memory/index.js";
|
|
5
6
|
import { attachmentPathsToPromptBlocks } from "../core/utils/attachments.js";
|
|
6
7
|
import { createQueue } from "./queue.js";
|
|
7
8
|
const MAX_ATTACHMENT_BYTES = 1024 * 1024;
|
|
@@ -21,8 +22,8 @@ function resolveUserId(message, session) {
|
|
|
21
22
|
if (!raw)
|
|
22
23
|
return session;
|
|
23
24
|
// Same user id across different servers is not the same human, so scope
|
|
24
|
-
// user ids by server. Channel is intentionally omitted so
|
|
25
|
-
//
|
|
25
|
+
// user ids by server. Channel is intentionally omitted so user identity
|
|
26
|
+
// stays consistent across rooms within one server.
|
|
26
27
|
return `${message.meta.subscription.server}:${raw}`;
|
|
27
28
|
}
|
|
28
29
|
function formatSubscriptions(subscriptions) {
|
|
@@ -75,12 +76,14 @@ export async function main(options) {
|
|
|
75
76
|
debug(`invoking agent → ${tag} session=${session} user=${user}`);
|
|
76
77
|
const invokeInput = await toInvokeInput(message);
|
|
77
78
|
if (typeof invokeInput === "string") {
|
|
78
|
-
await options.agent.invoke(invokeInput);
|
|
79
|
+
await runWithAgentMemoryScope(options.agent, () => options.agent.invoke(invokeInput));
|
|
79
80
|
}
|
|
80
81
|
else {
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
82
|
+
await runWithAgentMemoryScope(options.agent, async () => {
|
|
83
|
+
for await (const event of options.agent.stream(invokeInput)) {
|
|
84
|
+
void event;
|
|
85
|
+
}
|
|
86
|
+
});
|
|
84
87
|
}
|
|
85
88
|
debug(`completed → ${tag} session=${session} user=${user}`);
|
|
86
89
|
}
|
package/dist/daemon/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/daemon/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EACL,OAAO,EACP,SAAS,GAGV,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAMtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,6BAA6B,EAAE,MAAM,8BAA8B,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AASzC,MAAM,oBAAoB,GAAG,IAAI,GAAG,IAAI,CAAC;AAEzC,SAAS,KAAK,CAAC,IAAY;IACzB,MAAM,CAAC,KAAK,CAAC,YAAY,IAAI,IAAI,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,gBAAgB,CACvB,OAAuB,EACvB,QAAiB;IAEjB,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,QAAQ,CAAC;IACrD,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAC3B,qEAAqE;IACrE,4EAA4E;IAC5E,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,IAAI,GAAG,EAAE,CAAC;AAC3F,CAAC;AAED,SAAS,aAAa,CACpB,OAAuB,EACvB,OAAgB;IAEhB,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;IACtC,IAAI,CAAC,GAAG;QAAE,OAAO,OAAO,CAAC;IACzB,wEAAwE;IACxE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/daemon/index.ts"],"names":[],"mappings":"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"}
|
package/dist/exec/approvals.d.ts
CHANGED
|
@@ -1,4 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
export declare function createToolApprovalHandler(): BeforeToolCallEventHandler;
|
|
4
|
-
export {};
|
|
1
|
+
import { HoomanToolApprovalIntervention } from "../core/approvals/intervention.js";
|
|
2
|
+
export declare function createToolApprovalIntervention(): HoomanToolApprovalIntervention;
|
package/dist/exec/approvals.js
CHANGED
|
@@ -1,33 +1,18 @@
|
|
|
1
1
|
import { createInterface } from "node:readline/promises";
|
|
2
2
|
import { stdin, stdout } from "node:process";
|
|
3
|
-
import {
|
|
4
|
-
import { isYoloEnabled } from "../core/state/yolo.js";
|
|
5
|
-
const INPUT_PREVIEW_LIMIT = 1_024;
|
|
6
|
-
function inputPreview(input) {
|
|
7
|
-
try {
|
|
8
|
-
const text = JSON.stringify(input, null, 2) ?? "null";
|
|
9
|
-
return text.length > INPUT_PREVIEW_LIMIT
|
|
10
|
-
? `${text.slice(0, INPUT_PREVIEW_LIMIT)}\n... (truncated)`
|
|
11
|
-
: text;
|
|
12
|
-
}
|
|
13
|
-
catch {
|
|
14
|
-
return String(input);
|
|
15
|
-
}
|
|
16
|
-
}
|
|
3
|
+
import { HoomanToolApprovalIntervention } from "../core/approvals/intervention.js";
|
|
17
4
|
function canPromptForApproval() {
|
|
18
5
|
return Boolean(stdin.isTTY && stdout.isTTY);
|
|
19
6
|
}
|
|
20
|
-
async function promptForApproval(
|
|
7
|
+
async function promptForApproval(toolName, description, inputPreview) {
|
|
21
8
|
const rl = createInterface({ input: stdin, output: stdout });
|
|
22
|
-
const description = event.tool?.description?.trim();
|
|
23
|
-
const preview = inputPreview(event.toolUse.input);
|
|
24
9
|
try {
|
|
25
10
|
stdout.write(`\nTool approval required\n`);
|
|
26
|
-
stdout.write(`Tool: ${
|
|
11
|
+
stdout.write(`Tool: ${toolName}\n`);
|
|
27
12
|
if (description) {
|
|
28
13
|
stdout.write(`Description: ${description}\n`);
|
|
29
14
|
}
|
|
30
|
-
stdout.write(`Input:\n${
|
|
15
|
+
stdout.write(`Input:\n${inputPreview}\n`);
|
|
31
16
|
stdout.write(`Options: [a]llow once, [r]eject, [A]lways allow\n`);
|
|
32
17
|
while (true) {
|
|
33
18
|
const answer = (await rl.question("> ")).trim();
|
|
@@ -47,34 +32,17 @@ async function promptForApproval(event) {
|
|
|
47
32
|
rl.close();
|
|
48
33
|
}
|
|
49
34
|
}
|
|
50
|
-
export function
|
|
51
|
-
return
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
return;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
isToolSessionAllowed(event.agent, name, event.toolUse.input)) {
|
|
63
|
-
return;
|
|
64
|
-
}
|
|
65
|
-
if (!canPromptForApproval()) {
|
|
66
|
-
event.cancel = `Tool "${name}" requires approval, but no interactive terminal is available.`;
|
|
67
|
-
return;
|
|
68
|
-
}
|
|
69
|
-
const decision = await promptForApproval(event);
|
|
70
|
-
if (decision === "allow") {
|
|
71
|
-
return;
|
|
72
|
-
}
|
|
73
|
-
if (decision === "always") {
|
|
74
|
-
allowToolForSession(event.agent, name);
|
|
75
|
-
return;
|
|
76
|
-
}
|
|
77
|
-
event.cancel = `Tool "${name}" was rejected by the user.`;
|
|
78
|
-
};
|
|
35
|
+
export function createToolApprovalIntervention() {
|
|
36
|
+
return new HoomanToolApprovalIntervention({
|
|
37
|
+
ask: async (request) => {
|
|
38
|
+
if (!canPromptForApproval()) {
|
|
39
|
+
return {
|
|
40
|
+
decision: "reject",
|
|
41
|
+
reason: `Tool "${request.toolName}" requires approval, but no interactive terminal is available.`,
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
return promptForApproval(request.toolName, request.description, request.inputPreview);
|
|
45
|
+
},
|
|
46
|
+
});
|
|
79
47
|
}
|
|
80
48
|
//# sourceMappingURL=approvals.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"approvals.js","sourceRoot":"","sources":["../../src/exec/approvals.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"approvals.js","sourceRoot":"","sources":["../../src/exec/approvals.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,8BAA8B,EAAE,MAAM,mCAAmC,CAAC;AAGnF,SAAS,oBAAoB;IAC3B,OAAO,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC;AAC9C,CAAC;AAED,KAAK,UAAU,iBAAiB,CAC9B,QAAgB,EAChB,WAA+B,EAC/B,YAAoB;IAEpB,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAC7D,IAAI,CAAC;QACH,MAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAC3C,MAAM,CAAC,KAAK,CAAC,SAAS,QAAQ,IAAI,CAAC,CAAC;QACpC,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,CAAC,KAAK,CAAC,gBAAgB,WAAW,IAAI,CAAC,CAAC;QAChD,CAAC;QACD,MAAM,CAAC,KAAK,CAAC,WAAW,YAAY,IAAI,CAAC,CAAC;QAC1C,MAAM,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC;QAClE,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,MAAM,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAChD,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,OAAO,IAAI,MAAM,KAAK,EAAE,EAAE,CAAC;gBAC1D,OAAO,OAAO,CAAC;YACjB,CAAC;YACD,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC1C,OAAO,QAAQ,CAAC;YAClB,CAAC;YACD,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC1C,OAAO,QAAQ,CAAC;YAClB,CAAC;YACD,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED,MAAM,UAAU,8BAA8B;IAC5C,OAAO,IAAI,8BAA8B,CAAC;QACxC,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YACrB,IAAI,CAAC,oBAAoB,EAAE,EAAE,CAAC;gBAC5B,OAAO;oBACL,QAAQ,EAAE,QAAQ;oBAClB,MAAM,EAAE,SAAS,OAAO,CAAC,QAAQ,gEAAgE;iBAClG,CAAC;YACJ,CAAC;YACD,OAAO,iBAAiB,CACtB,OAAO,CAAC,QAAQ,EAChB,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,YAAY,CACrB,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
export { bootstrap } from "./core/index.js";
|
|
2
2
|
export type { AcpMeta, BootstrapMeta, BootstrapMode } from "./core/index.js";
|
|
3
|
-
export { Config as HoomanConfig,
|
|
4
|
-
export type { CompactionConfig, ConfigData, LlmConfig,
|
|
5
|
-
export { attachmentsPath, basePath, configJsonPath, instructionsMdPath,
|
|
3
|
+
export { Config as HoomanConfig, LlmProvider } from "./core/config.js";
|
|
4
|
+
export type { CompactionConfig, ConfigData, LlmConfig, NamedLlmConfig, NamedProviderConfig, PromptsConfig, ProviderConfig, ResolvedNamedLlmConfig, SearchConfig, ToolsConfig, } from "./core/config.js";
|
|
5
|
+
export { attachmentsPath, basePath, configJsonPath, instructionsMdPath, mcpJsonPath, mcpOauthJsonPath, sessionsPath, skillsPath, } from "./core/utils/paths.js";
|
|
6
|
+
export { openBrowser } from "./core/utils/browser.js";
|
|
6
7
|
export { attachmentDiagnosticBlock, attachmentPathsToPromptBlocks, normalizeAttachmentPaths, readAttachmentAsBlocksOrBase64, } from "./core/utils/attachments.js";
|
|
7
8
|
export type { AttachmentBinaryFallback, AttachmentMediaBlocks, AttachmentReadResult, } from "./core/utils/attachments.js";
|
|
8
9
|
export { detectDocumentFormat, detectImageFormat, detectVideoFormat, } from "./core/utils/file-formats.js";
|
|
@@ -10,19 +11,19 @@ export { getCwd, runWithCwd } from "./core/utils/cwd-context.js";
|
|
|
10
11
|
export { isResolvedPathInsideDir, normalizeUserPath, } from "./core/utils/normalize-user-path.js";
|
|
11
12
|
export { create as createAgent } from "./core/agent/index.js";
|
|
12
13
|
export { applySessionMode } from "./core/agent/sync-tool-registry-mode.js";
|
|
13
|
-
export { HOOMAN_CHANNEL, HOOMAN_CHANNEL_PERMISSION, Manager as McpManager, createMcpConfig, createMcpManager, } from "./core/mcp/index.js";
|
|
14
|
-
export type { ChannelMessage, ChannelPermissionBehavior, ChannelSubscription, ChannelSubscriptionHandle, NamedMcpTransport, } from "./core/mcp/index.js";
|
|
14
|
+
export { HOOMAN_CHANNEL, HOOMAN_CHANNEL_PERMISSION, Manager as McpManager, createMcpConfig, createMcpManager, createMcpOAuthService, createMcpOAuthStore, } from "./core/mcp/index.js";
|
|
15
|
+
export type { ChannelMessage, ChannelPermissionBehavior, ChannelSubscription, ChannelSubscriptionHandle, NamedMcpTransport, ServerAuthStatus, } from "./core/mcp/index.js";
|
|
15
16
|
export { Config as McpConfig, type McpServersFile } from "./core/mcp/config.js";
|
|
17
|
+
export { HoomanMcpOAuthProvider, McpOAuthConfigSchema, McpOAuthService, McpOAuthStore, StoredMcpOAuthClientSchema, StoredMcpOAuthDiscoverySchema, StoredMcpOAuthEntrySchema, StoredMcpOAuthFileSchema, StoredMcpOAuthTokensSchema, canonicalizeRemoteServerUrl, createRemoteTransportFingerprint, createRemoteTransportIdentity, startCallbackServer, } from "./core/mcp/oauth/index.js";
|
|
18
|
+
export type { BeginAuthorizationResult as McpBeginAuthorizationResult, McpOAuthConfig, OAuthRemoteTransport, StoredMcpOAuthClient, StoredMcpOAuthDiscovery, StoredMcpOAuthEntry, StoredMcpOAuthFile, StoredMcpOAuthTokens, } from "./core/mcp/oauth/index.js";
|
|
16
19
|
export { McpTransportSchema, SseSchema, StdioSchema, StreamableHttpSchema, } from "./core/mcp/types.js";
|
|
17
20
|
export type { McpTransport, Sse, Stdio, StreamableHttp, } from "./core/mcp/types.js";
|
|
18
21
|
export { PrefixedMcpTool } from "./core/mcp/prefixed-mcp-tool.js";
|
|
19
22
|
export { createByeTools, createFetchTools, createFilesystemTools, createShellTools, createSleepTools, createThinkingTools, createTimeTools, createTodoTools, createWebSearchTools, } from "./core/tools/index.js";
|
|
20
23
|
export { UPDATE_TODOS_TOOL_NAME } from "./core/tools/todo.js";
|
|
21
|
-
export { Registry as SkillsRegistry, createSkillsRegistry, } from "./core/skills/index.js";
|
|
24
|
+
export { AGENT_SKILLS_STATE_KEY, Registry as SkillsRegistry, builtInSkillsPath, clearAgentSkillsPromptInjectionState, createAgentSkillsPlugin, createAgentSkillSources, createSkillsRegistry, } from "./core/skills/index.js";
|
|
22
25
|
export type { SkillListEntry, SkillSearchResult, } from "./core/skills/registry.js";
|
|
23
|
-
export {
|
|
24
|
-
export type { SkillMetadata } from "./core/skills/metadata.js";
|
|
25
|
-
export { Skills as SkillsPrompt, System as SystemPrompt, skills as createSkillsPrompt, system as createSystemPrompt, } from "./core/prompts/index.js";
|
|
26
|
+
export { System as SystemPrompt, system as createSystemPrompt, } from "./core/prompts/index.js";
|
|
26
27
|
export type { SystemMode } from "./core/prompts/system.js";
|
|
27
28
|
export { modelProviders } from "./core/models/index.js";
|
|
28
29
|
export type { ModelProvider } from "./core/models/index.js";
|
|
@@ -39,18 +40,12 @@ export { StrandsOllamaModel, type OllamaModelConfig, } from "./core/models/ollam
|
|
|
39
40
|
export { create as createContext, LazySessionManager, } from "./core/context/index.js";
|
|
40
41
|
export type { LazySessionManagerConfig } from "./core/context/index.js";
|
|
41
42
|
export { FlatFileStorage } from "./core/context/flat-file-storage.js";
|
|
42
|
-
export {
|
|
43
|
-
export {
|
|
44
|
-
export type { WikiDocRecord } from "./core/wiki/database.js";
|
|
45
|
-
export type { WikiListResult } from "./core/wiki/storage.js";
|
|
46
|
-
export { createWikiTools } from "./core/wiki/tools.js";
|
|
47
|
-
export type { Memory as LongTermMemory, MemoryType, Sqlite as MemorySqlite, } from "./core/memory/index.js";
|
|
48
|
-
export { BUILTIN_AGENT_CONFIGS, BUILTIN_AGENT_KINDS, RUN_AGENTS_TOOL_NAME, createRunAgentsTools, loadBuiltInAgentDefinitions, runAgentJobs, } from "./core/agents/index.js";
|
|
49
|
-
export type { AgentConfig, AgentDefinition, AgentJob, AgentJobResult, AgentKind, RunAgentJobsResult, } from "./core/agents/index.js";
|
|
43
|
+
export { RESEARCH_SUBAGENT, RUN_SUBAGENTS_TOOL_NAME, createRunSubagentTools, loadResearchSubagent, runSubagentJobs, } from "./core/subagents/index.js";
|
|
44
|
+
export type { AgentJob, AgentJobResult, ResearchSubagentConfig, ResearchSubagentDefinition, RunAgentJobsResult, } from "./core/subagents/index.js";
|
|
50
45
|
export { EXIT_REQUESTED_CODE, EXIT_REQUESTED_STATE_KEY, consumeExitRequest, isExitRequested, requestExit, } from "./core/state/exit-request.js";
|
|
51
46
|
export { INTERNAL_ALWAYS_ALLOWED as TOOL_APPROVAL_INTERNAL_ALWAYS_ALLOWED, allowToolForSession, getSessionAllowedTools, isToolSessionAllowed, planModeWriteEditRejectionMessage, } from "./core/state/tool-approvals.js";
|
|
52
47
|
export { YOLO_STATE_KEY, isYoloEnabled, setYoloEnabled, } from "./core/state/yolo.js";
|
|
53
|
-
export { MODE_STATE_KEY, getModeState,
|
|
48
|
+
export { MODE_STATE_KEY, getModeState, setSessionMode, type SessionMode, } from "./core/state/session-mode.js";
|
|
54
49
|
export { TODO_ITEMS_STATE_KEY, TODO_VISIBLE_STATE_KEY, TodoItemSchema, TodoStatusSchema, clearTodoState, getTodoViewState, setTodoState, summarizeTodos, } from "./core/state/todos.js";
|
|
55
50
|
export type { TodoItem, TodoStatus, TodoViewState, } from "./core/state/todos.js";
|
|
56
51
|
export { readThinkingState, writeThinkingState, } from "./core/state/thought-process.js";
|
package/dist/index.js
CHANGED
|
@@ -1,23 +1,24 @@
|
|
|
1
1
|
// Flat public API for implementation consumers. UI and client-protocol entry
|
|
2
2
|
// points stay internal to the CLI package surface.
|
|
3
3
|
export { bootstrap } from "./core/index.js";
|
|
4
|
-
export { Config as HoomanConfig,
|
|
5
|
-
export { attachmentsPath, basePath, configJsonPath, instructionsMdPath,
|
|
4
|
+
export { Config as HoomanConfig, LlmProvider } from "./core/config.js";
|
|
5
|
+
export { attachmentsPath, basePath, configJsonPath, instructionsMdPath, mcpJsonPath, mcpOauthJsonPath, sessionsPath, skillsPath, } from "./core/utils/paths.js";
|
|
6
|
+
export { openBrowser } from "./core/utils/browser.js";
|
|
6
7
|
export { attachmentDiagnosticBlock, attachmentPathsToPromptBlocks, normalizeAttachmentPaths, readAttachmentAsBlocksOrBase64, } from "./core/utils/attachments.js";
|
|
7
8
|
export { detectDocumentFormat, detectImageFormat, detectVideoFormat, } from "./core/utils/file-formats.js";
|
|
8
9
|
export { getCwd, runWithCwd } from "./core/utils/cwd-context.js";
|
|
9
10
|
export { isResolvedPathInsideDir, normalizeUserPath, } from "./core/utils/normalize-user-path.js";
|
|
10
11
|
export { create as createAgent } from "./core/agent/index.js";
|
|
11
12
|
export { applySessionMode } from "./core/agent/sync-tool-registry-mode.js";
|
|
12
|
-
export { HOOMAN_CHANNEL, HOOMAN_CHANNEL_PERMISSION, Manager as McpManager, createMcpConfig, createMcpManager, } from "./core/mcp/index.js";
|
|
13
|
+
export { HOOMAN_CHANNEL, HOOMAN_CHANNEL_PERMISSION, Manager as McpManager, createMcpConfig, createMcpManager, createMcpOAuthService, createMcpOAuthStore, } from "./core/mcp/index.js";
|
|
13
14
|
export { Config as McpConfig } from "./core/mcp/config.js";
|
|
15
|
+
export { HoomanMcpOAuthProvider, McpOAuthConfigSchema, McpOAuthService, McpOAuthStore, StoredMcpOAuthClientSchema, StoredMcpOAuthDiscoverySchema, StoredMcpOAuthEntrySchema, StoredMcpOAuthFileSchema, StoredMcpOAuthTokensSchema, canonicalizeRemoteServerUrl, createRemoteTransportFingerprint, createRemoteTransportIdentity, startCallbackServer, } from "./core/mcp/oauth/index.js";
|
|
14
16
|
export { McpTransportSchema, SseSchema, StdioSchema, StreamableHttpSchema, } from "./core/mcp/types.js";
|
|
15
17
|
export { PrefixedMcpTool } from "./core/mcp/prefixed-mcp-tool.js";
|
|
16
18
|
export { createByeTools, createFetchTools, createFilesystemTools, createShellTools, createSleepTools, createThinkingTools, createTimeTools, createTodoTools, createWebSearchTools, } from "./core/tools/index.js";
|
|
17
19
|
export { UPDATE_TODOS_TOOL_NAME } from "./core/tools/todo.js";
|
|
18
|
-
export { Registry as SkillsRegistry, createSkillsRegistry, } from "./core/skills/index.js";
|
|
19
|
-
export {
|
|
20
|
-
export { Skills as SkillsPrompt, System as SystemPrompt, skills as createSkillsPrompt, system as createSystemPrompt, } from "./core/prompts/index.js";
|
|
20
|
+
export { AGENT_SKILLS_STATE_KEY, Registry as SkillsRegistry, builtInSkillsPath, clearAgentSkillsPromptInjectionState, createAgentSkillsPlugin, createAgentSkillSources, createSkillsRegistry, } from "./core/skills/index.js";
|
|
21
|
+
export { System as SystemPrompt, system as createSystemPrompt, } from "./core/prompts/index.js";
|
|
21
22
|
export { modelProviders } from "./core/models/index.js";
|
|
22
23
|
export { create as createAnthropicModelProvider, } from "./core/models/anthropic.js";
|
|
23
24
|
export { create as createBedrockModelProvider } from "./core/models/bedrock.js";
|
|
@@ -30,14 +31,11 @@ export { create as createXaiModelProvider } from "./core/models/xai.js";
|
|
|
30
31
|
export { StrandsOllamaModel, } from "./core/models/ollama/strands-ollama.js";
|
|
31
32
|
export { create as createContext, LazySessionManager, } from "./core/context/index.js";
|
|
32
33
|
export { FlatFileStorage } from "./core/context/flat-file-storage.js";
|
|
33
|
-
export {
|
|
34
|
-
export { Storage as WikiStorage } from "./core/wiki/storage.js";
|
|
35
|
-
export { createWikiTools } from "./core/wiki/tools.js";
|
|
36
|
-
export { BUILTIN_AGENT_CONFIGS, BUILTIN_AGENT_KINDS, RUN_AGENTS_TOOL_NAME, createRunAgentsTools, loadBuiltInAgentDefinitions, runAgentJobs, } from "./core/agents/index.js";
|
|
34
|
+
export { RESEARCH_SUBAGENT, RUN_SUBAGENTS_TOOL_NAME, createRunSubagentTools, loadResearchSubagent, runSubagentJobs, } from "./core/subagents/index.js";
|
|
37
35
|
export { EXIT_REQUESTED_CODE, EXIT_REQUESTED_STATE_KEY, consumeExitRequest, isExitRequested, requestExit, } from "./core/state/exit-request.js";
|
|
38
36
|
export { INTERNAL_ALWAYS_ALLOWED as TOOL_APPROVAL_INTERNAL_ALWAYS_ALLOWED, allowToolForSession, getSessionAllowedTools, isToolSessionAllowed, planModeWriteEditRejectionMessage, } from "./core/state/tool-approvals.js";
|
|
39
37
|
export { YOLO_STATE_KEY, isYoloEnabled, setYoloEnabled, } from "./core/state/yolo.js";
|
|
40
|
-
export { MODE_STATE_KEY, getModeState,
|
|
38
|
+
export { MODE_STATE_KEY, getModeState, setSessionMode, } from "./core/state/session-mode.js";
|
|
41
39
|
export { TODO_ITEMS_STATE_KEY, TODO_VISIBLE_STATE_KEY, TodoItemSchema, TodoStatusSchema, clearTodoState, getTodoViewState, setTodoState, summarizeTodos, } from "./core/state/todos.js";
|
|
42
40
|
export { readThinkingState, writeThinkingState, } from "./core/state/thought-process.js";
|
|
43
41
|
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,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "hoomanjs",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.30.0",
|
|
4
4
|
"description": "Hackable AI agent toolkit for building local CLI, ACP, MCP, and channel-driven workflows.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Vaibhav Pandey",
|
|
@@ -53,7 +53,6 @@
|
|
|
53
53
|
"typecheck": "tsc --noEmit"
|
|
54
54
|
},
|
|
55
55
|
"devDependencies": {
|
|
56
|
-
"@types/better-sqlite3": "^7.6.13",
|
|
57
56
|
"@types/jsdom": "^28.0.1",
|
|
58
57
|
"@types/lodash": "^4.17.24",
|
|
59
58
|
"@types/luxon": "^3.7.1",
|
|
@@ -72,22 +71,20 @@
|
|
|
72
71
|
"dependencies": {
|
|
73
72
|
"@agentclientprotocol/sdk": "^0.18.2",
|
|
74
73
|
"@ai-sdk/groq": "^3.0.35",
|
|
75
|
-
"@ai-sdk/moonshotai": "^2.0.
|
|
74
|
+
"@ai-sdk/moonshotai": "^2.0.26",
|
|
76
75
|
"@ai-sdk/xai": "^3.0.83",
|
|
77
|
-
"@anthropic-ai/sdk": "^0.
|
|
76
|
+
"@anthropic-ai/sdk": "^0.92.0",
|
|
78
77
|
"@aws-sdk/client-bedrock-runtime": "^3.1028.0",
|
|
79
78
|
"@google/genai": "^1.40.0",
|
|
80
79
|
"@mendable/firecrawl-js": "^4.21.0",
|
|
81
80
|
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
82
81
|
"@mozilla/readability": "^0.6.0",
|
|
83
|
-
"@
|
|
84
|
-
"@strands-agents/sdk": "^1.0.0",
|
|
82
|
+
"@strands-agents/sdk": "^1.6.0",
|
|
85
83
|
"@tavily/core": "^0.7.2",
|
|
86
|
-
"better-sqlite3": "^12.8.0",
|
|
87
84
|
"cli-highlight": "^2.1.11",
|
|
88
85
|
"cli-spinners": "^3.4.0",
|
|
89
86
|
"commander": "^14.0.3",
|
|
90
|
-
"exa-js": "^2.
|
|
87
|
+
"exa-js": "^2.14.0",
|
|
91
88
|
"fastq": "^1.20.1",
|
|
92
89
|
"gray-matter": "^4.0.3",
|
|
93
90
|
"handlebars": "^4.7.9",
|
|
@@ -99,23 +96,13 @@
|
|
|
99
96
|
"jsdom": "^29.0.2",
|
|
100
97
|
"lodash": "^4.18.1",
|
|
101
98
|
"luxon": "^3.7.2",
|
|
102
|
-
"mammoth": "^1.12.0",
|
|
103
99
|
"marked": "^18.0.2",
|
|
104
100
|
"millify": "^6.1.0",
|
|
105
|
-
"node-llama-cpp": "^3.18.1",
|
|
106
101
|
"ollama": "^0.6.3",
|
|
107
102
|
"openai": "^6.34.0",
|
|
108
103
|
"react": "^19.2.5",
|
|
109
104
|
"slugify": "^1.6.9",
|
|
110
|
-
"sqlite-vec": "^0.1.9",
|
|
111
105
|
"turndown": "^7.2.4",
|
|
112
106
|
"zod": "^4.3.6"
|
|
113
|
-
},
|
|
114
|
-
"optionalDependencies": {
|
|
115
|
-
"sqlite-vec-darwin-arm64": "0.1.9",
|
|
116
|
-
"sqlite-vec-darwin-x64": "0.1.9",
|
|
117
|
-
"sqlite-vec-linux-arm64": "0.1.9",
|
|
118
|
-
"sqlite-vec-linux-x64": "0.1.9",
|
|
119
|
-
"sqlite-vec-windows-x64": "0.1.9"
|
|
120
107
|
}
|
|
121
108
|
}
|