hoomanjs 1.28.2 → 1.29.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 +32 -71
- package/dist/acp/acp-agent.js +1 -1
- package/dist/acp/acp-agent.js.map +1 -1
- package/dist/acp/sessions/{config-options.d.ts → options.d.ts} +0 -2
- package/dist/acp/sessions/{config-options.js → options.js} +3 -52
- package/dist/acp/sessions/options.js.map +1 -0
- package/dist/acp/utils/tool-kind.js +3 -9
- package/dist/acp/utils/tool-kind.js.map +1 -1
- package/dist/acp/utils/tool-locations.js +0 -2
- package/dist/acp/utils/tool-locations.js.map +1 -1
- package/dist/chat/app.js +1 -1
- package/dist/chat/app.js.map +1 -1
- package/dist/chat/index.js +1 -1
- package/dist/chat/index.js.map +1 -1
- package/dist/configure/app.js +227 -72
- package/dist/configure/app.js.map +1 -1
- package/dist/configure/types.d.ts +8 -0
- package/dist/core/agent/index.d.ts +1 -1
- package/dist/core/agent/index.js +10 -9
- package/dist/core/agent/index.js.map +1 -1
- package/dist/core/agents/registry.js +1 -1
- package/dist/core/agents/registry.js.map +1 -1
- package/dist/core/config.d.ts +5 -24
- package/dist/core/config.js +8 -43
- package/dist/core/config.js.map +1 -1
- package/dist/core/context/flat-file-storage.js.map +1 -0
- package/dist/core/{memory/stm → context}/index.js +1 -1
- package/dist/core/context/index.js.map +1 -0
- package/dist/core/{memory/stm → context}/lazy-session-manager.js +1 -1
- package/dist/core/context/lazy-session-manager.js.map +1 -0
- package/dist/core/inference/embedder.d.ts +26 -0
- package/dist/core/inference/embedder.js +85 -0
- package/dist/core/inference/embedder.js.map +1 -0
- package/dist/core/inference/index.d.ts +12 -0
- package/dist/core/inference/index.js +20 -0
- package/dist/core/inference/index.js.map +1 -0
- package/dist/core/inference/loader.d.ts +8 -0
- package/dist/core/inference/loader.js +85 -0
- package/dist/core/inference/loader.js.map +1 -0
- package/dist/core/memory/brain.d.ts +24 -0
- package/dist/core/memory/brain.js +133 -0
- package/dist/core/memory/brain.js.map +1 -0
- package/dist/core/memory/database.d.ts +4 -0
- package/dist/core/memory/database.js +87 -0
- package/dist/core/memory/database.js.map +1 -0
- package/dist/core/memory/index.d.ts +5 -3
- package/dist/core/memory/index.js +3 -2
- package/dist/core/memory/index.js.map +1 -1
- package/dist/core/memory/tools.d.ts +16 -0
- package/dist/core/memory/tools.js +105 -0
- package/dist/core/memory/tools.js.map +1 -0
- package/dist/core/memory/types.d.ts +11 -0
- package/dist/core/memory/{ltm/types.js.map → types.js.map} +1 -1
- package/dist/core/models/index.js +1 -3
- package/dist/core/models/index.js.map +1 -1
- package/dist/core/models/openai.js +9 -0
- package/dist/core/models/openai.js.map +1 -0
- package/dist/core/prompts/static/memory.md +125 -0
- package/dist/core/prompts/static/wiki.md +15 -71
- package/dist/core/prompts/system.d.ts +4 -0
- package/dist/core/prompts/system.js +40 -9
- package/dist/core/prompts/system.js.map +1 -1
- package/dist/core/skills/built-in/hooman-config/SKILL.md +14 -50
- package/dist/core/state/tool-approvals.js +4 -15
- package/dist/core/state/tool-approvals.js.map +1 -1
- package/dist/core/tools/index.d.ts +0 -1
- package/dist/core/tools/index.js +0 -1
- package/dist/core/tools/index.js.map +1 -1
- package/dist/core/utils/hashing.d.ts +1 -0
- package/dist/core/utils/hashing.js +5 -0
- package/dist/core/utils/hashing.js.map +1 -0
- package/dist/core/utils/paths.d.ts +3 -0
- package/dist/core/utils/paths.js +11 -24
- package/dist/core/utils/paths.js.map +1 -1
- package/dist/core/utils/strands-usage-accumulate.js.map +1 -0
- package/dist/core/wiki/converters.d.ts +12 -0
- package/dist/core/wiki/converters.js +73 -0
- package/dist/core/wiki/converters.js.map +1 -0
- package/dist/core/wiki/database.d.ts +38 -0
- package/dist/core/wiki/database.js +173 -0
- package/dist/core/wiki/database.js.map +1 -0
- package/dist/core/wiki/index.d.ts +7 -0
- package/dist/core/wiki/index.js +5 -0
- package/dist/core/wiki/index.js.map +1 -0
- package/dist/core/wiki/storage.d.ts +35 -0
- package/dist/core/wiki/storage.js +196 -0
- package/dist/core/wiki/storage.js.map +1 -0
- package/dist/core/wiki/tools.d.ts +5 -0
- package/dist/core/wiki/tools.js +32 -0
- package/dist/core/wiki/tools.js.map +1 -0
- package/dist/index.d.ts +11 -18
- package/dist/index.js +8 -13
- package/dist/index.js.map +1 -1
- package/package.json +13 -8
- package/dist/acp/sessions/config-options.js.map +0 -1
- package/dist/core/memory/ltm/embed.d.ts +0 -16
- package/dist/core/memory/ltm/embed.js +0 -49
- package/dist/core/memory/ltm/embed.js.map +0 -1
- package/dist/core/memory/ltm/index.d.ts +0 -3
- package/dist/core/memory/ltm/index.js +0 -3
- package/dist/core/memory/ltm/index.js.map +0 -1
- package/dist/core/memory/ltm/store.d.ts +0 -20
- package/dist/core/memory/ltm/store.js +0 -271
- package/dist/core/memory/ltm/store.js.map +0 -1
- package/dist/core/memory/ltm/tools.d.ts +0 -21
- package/dist/core/memory/ltm/tools.js +0 -127
- package/dist/core/memory/ltm/tools.js.map +0 -1
- package/dist/core/memory/ltm/types.d.ts +0 -79
- package/dist/core/memory/ltm/utils.d.ts +0 -40
- package/dist/core/memory/ltm/utils.js +0 -145
- package/dist/core/memory/ltm/utils.js.map +0 -1
- package/dist/core/memory/stm/flat-file-storage.js.map +0 -1
- package/dist/core/memory/stm/index.js.map +0 -1
- package/dist/core/memory/stm/lazy-session-manager.js.map +0 -1
- package/dist/core/models/bifrost/bifrost-base-url.d.ts +0 -6
- package/dist/core/models/bifrost/bifrost-base-url.js +0 -27
- package/dist/core/models/bifrost/bifrost-base-url.js.map +0 -1
- package/dist/core/models/bifrost/index.d.ts +0 -11
- package/dist/core/models/bifrost/index.js +0 -29
- package/dist/core/models/bifrost/index.js.map +0 -1
- package/dist/core/models/bifrost/strands-bifrost.d.ts +0 -14
- package/dist/core/models/bifrost/strands-bifrost.js +0 -168
- package/dist/core/models/bifrost/strands-bifrost.js.map +0 -1
- package/dist/core/models/openai/index.js +0 -13
- package/dist/core/models/openai/index.js.map +0 -1
- package/dist/core/models/openai/kimi-reasoning-wire.d.ts +0 -40
- package/dist/core/models/openai/kimi-reasoning-wire.js +0 -109
- package/dist/core/models/openai/kimi-reasoning-wire.js.map +0 -1
- package/dist/core/models/openai/openai-stream-shims.d.ts +0 -13
- package/dist/core/models/openai/openai-stream-shims.js +0 -48
- package/dist/core/models/openai/openai-stream-shims.js.map +0 -1
- package/dist/core/models/tensorzero/index.d.ts +0 -12
- package/dist/core/models/tensorzero/index.js +0 -17
- package/dist/core/models/tensorzero/index.js.map +0 -1
- package/dist/core/models/tensorzero/openai-chat-request-shims.d.ts +0 -25
- package/dist/core/models/tensorzero/openai-chat-request-shims.js +0 -45
- package/dist/core/models/tensorzero/openai-chat-request-shims.js.map +0 -1
- package/dist/core/models/tensorzero/strands-tensorzero.d.ts +0 -14
- package/dist/core/models/tensorzero/strands-tensorzero.js +0 -140
- package/dist/core/models/tensorzero/strands-tensorzero.js.map +0 -1
- package/dist/core/prompts/static/ltm.md +0 -50
- package/dist/core/tools/wiki.d.ts +0 -11
- package/dist/core/tools/wiki.js +0 -560
- package/dist/core/tools/wiki.js.map +0 -1
- package/dist/lib/strands-usage-accumulate.js.map +0 -1
- /package/dist/core/{memory/stm → context}/flat-file-storage.d.ts +0 -0
- /package/dist/core/{memory/stm → context}/flat-file-storage.js +0 -0
- /package/dist/core/{memory/stm → context}/index.d.ts +0 -0
- /package/dist/core/{memory/stm → context}/lazy-session-manager.d.ts +0 -0
- /package/dist/core/memory/{ltm/types.js → types.js} +0 -0
- /package/dist/core/models/{openai/index.d.ts → openai.d.ts} +0 -0
- /package/dist/{lib → core/utils}/strands-usage-accumulate.d.ts +0 -0
- /package/dist/{lib → core/utils}/strands-usage-accumulate.js +0 -0
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
## Memory
|
|
2
|
+
|
|
3
|
+
You have long-term memory tools:
|
|
4
|
+
|
|
5
|
+
- `memory_add(scope, content, type, metadata?)`
|
|
6
|
+
- `memory_search(scope, query, types?, k?)`
|
|
7
|
+
- `memory_archive(scope, id, reason?)`
|
|
8
|
+
|
|
9
|
+
Use memory to preserve durable context across sessions. Do not treat memory as source of truth over current user instructions.
|
|
10
|
+
|
|
11
|
+
### Scopes
|
|
12
|
+
|
|
13
|
+
- `user`: useful across many repositories/sessions for the same user.
|
|
14
|
+
- `project`: specific to the current repository or working directory.
|
|
15
|
+
- Rule of thumb:
|
|
16
|
+
- If it helps only this codebase/task flow -> `project`
|
|
17
|
+
- If it reflects stable personal preference/style/rule across projects -> `user`
|
|
18
|
+
|
|
19
|
+
### Types
|
|
20
|
+
|
|
21
|
+
- `fact`: stable concrete info
|
|
22
|
+
- `observation`: pattern noticed from recent work
|
|
23
|
+
- `preference`: how user wants things done
|
|
24
|
+
- `task`: ongoing objective or follow-up commitment
|
|
25
|
+
|
|
26
|
+
### Required Habit After Successful Work
|
|
27
|
+
|
|
28
|
+
After each successful, non-trivial turn, add one very concise `project` memory capturing:
|
|
29
|
+
|
|
30
|
+
- what was done
|
|
31
|
+
- how it was done
|
|
32
|
+
- why that approach was used
|
|
33
|
+
|
|
34
|
+
Keep this to 1-2 short sentences total.
|
|
35
|
+
|
|
36
|
+
If, during the same turn, you identify something broadly reusable across projects (preference, style, recurring rule, communication preference), also add a separate `user` memory.
|
|
37
|
+
|
|
38
|
+
### What To Store
|
|
39
|
+
|
|
40
|
+
Store only information that is likely to matter later:
|
|
41
|
+
|
|
42
|
+
- decisions, constraints, conventions, trade-offs
|
|
43
|
+
- user preferences that affect future behavior
|
|
44
|
+
- durable troubleshooting findings and known pitfalls
|
|
45
|
+
- active tasks/goals that may continue in later sessions
|
|
46
|
+
|
|
47
|
+
Do not store:
|
|
48
|
+
|
|
49
|
+
- transient one-off chatter
|
|
50
|
+
- data obvious from current files unless the decision/rationale matters
|
|
51
|
+
- duplicate entries with no new value
|
|
52
|
+
|
|
53
|
+
### How To Write `content`
|
|
54
|
+
|
|
55
|
+
Write retrieval-friendly content:
|
|
56
|
+
|
|
57
|
+
- concise and specific
|
|
58
|
+
- include key nouns (feature/module/file/tool)
|
|
59
|
+
- include outcome + rationale
|
|
60
|
+
- avoid fluff
|
|
61
|
+
|
|
62
|
+
Good pattern:
|
|
63
|
+
|
|
64
|
+
- `<Outcome>. <Method>. <Reason/constraint>.`
|
|
65
|
+
|
|
66
|
+
### `metadata` Usage
|
|
67
|
+
|
|
68
|
+
Use `metadata` as optional structured context (dictionary), for example:
|
|
69
|
+
|
|
70
|
+
- `files`: touched paths
|
|
71
|
+
- `decision`: short decision tag
|
|
72
|
+
- `reason`: main rationale
|
|
73
|
+
- `scope_hint`: optional discriminator
|
|
74
|
+
- `title`: short label (helps embeddings)
|
|
75
|
+
|
|
76
|
+
Prefer small, meaningful keys and values.
|
|
77
|
+
|
|
78
|
+
### When To Search
|
|
79
|
+
|
|
80
|
+
Use `memory_search` when prior context may matter:
|
|
81
|
+
|
|
82
|
+
- user says "continue", "as before", "same style", "like last time"
|
|
83
|
+
- implementation likely depends on earlier decisions
|
|
84
|
+
- personalization may affect response style or technical choices
|
|
85
|
+
|
|
86
|
+
Avoid broad fishing queries. Use targeted query strings and optional `types` filters.
|
|
87
|
+
|
|
88
|
+
### Examples
|
|
89
|
+
|
|
90
|
+
Project memory after successful turn:
|
|
91
|
+
|
|
92
|
+
- `memory_add`
|
|
93
|
+
- `scope`: `project`
|
|
94
|
+
- `type`: `fact`
|
|
95
|
+
- `content`: `Created a consistent scope strategy so project-specific context stays separated from broader user context. Updated the workflow guide to match the new memory commands and argument order. Chosen to improve retrieval precision and reduce accidental cross-context mixing.`
|
|
96
|
+
- `metadata`: `{ "title": "scope strategy update", "decision": "context-isolation" }`
|
|
97
|
+
|
|
98
|
+
User preference memory:
|
|
99
|
+
|
|
100
|
+
- `memory_add`
|
|
101
|
+
- `scope`: `user`
|
|
102
|
+
- `type`: `preference`
|
|
103
|
+
- `content`: `User prefers concise updates and practical, low-overhead solutions unless extra detail is requested.`
|
|
104
|
+
- `metadata`: `{ "title": "communication preference", "style": "concise" }`
|
|
105
|
+
|
|
106
|
+
Targeted search:
|
|
107
|
+
|
|
108
|
+
- `memory_search`
|
|
109
|
+
- `scope`: `project`
|
|
110
|
+
- `query`: `scope strategy archive behavior usage guidance`
|
|
111
|
+
- `types`: `[ "fact", "observation" ]`
|
|
112
|
+
- `k`: `5`
|
|
113
|
+
|
|
114
|
+
Archive obsolete memory:
|
|
115
|
+
|
|
116
|
+
- `memory_archive`
|
|
117
|
+
- `scope`: `project`
|
|
118
|
+
- `id`: `<memory-id>`
|
|
119
|
+
- `reason`: `Superseded by newer guidance and no longer reflects current behavior`
|
|
120
|
+
|
|
121
|
+
### Conflict Handling
|
|
122
|
+
|
|
123
|
+
- Current user message and current session context override memory.
|
|
124
|
+
- If memory conflicts with fresh instructions, follow fresh instructions.
|
|
125
|
+
- Archive stale/incorrect memory once confirmed.
|
|
@@ -1,81 +1,25 @@
|
|
|
1
1
|
## Wiki
|
|
2
2
|
|
|
3
|
-
You have
|
|
3
|
+
You have one wiki tool: `wiki_search`.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Use it to search the available knowledge base when you are unsure of facts or details the user is asking about. Prefer it when grounded reference material might exist beyond what you already know from the conversation. Results are semantic matches (snippets) plus paths you can pass to `read_file` if you need the full document.
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
that should survive beyond the current chat/session.
|
|
7
|
+
### What `wiki_search` Returns
|
|
9
8
|
|
|
10
|
-
|
|
9
|
+
Each match includes:
|
|
11
10
|
|
|
12
|
-
- `
|
|
13
|
-
- `
|
|
14
|
-
- `
|
|
15
|
-
- `
|
|
11
|
+
- matched `content` chunk
|
|
12
|
+
- `file_name`
|
|
13
|
+
- `md_file_path` and `original_file_path` (use either with `read_file` when you need more than the snippet)
|
|
14
|
+
- ranking hints like `distance`, `score`, and `chunk_pos`
|
|
16
15
|
|
|
17
|
-
###
|
|
16
|
+
### How To Use It
|
|
18
17
|
|
|
19
|
-
|
|
18
|
+
1. When the user asks something specific you do not already know, try `wiki_search` with a clear query before guessing.
|
|
19
|
+
2. Read returned snippets first to judge relevance.
|
|
20
|
+
3. If you need the full document, use `read_file` on `md_file_path` or `original_file_path` as appropriate.
|
|
20
21
|
|
|
21
|
-
|
|
22
|
-
- recurring runbooks, decision records, and comparisons
|
|
23
|
-
- durable context that will likely be referenced in future sessions
|
|
24
|
-
- synthesized summaries that combine multiple interactions
|
|
22
|
+
### Important Constraints
|
|
25
23
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
### Tool Workflow (Default)
|
|
30
|
-
|
|
31
|
-
Use this sequence by default:
|
|
32
|
-
|
|
33
|
-
1. Discover context with `wiki_list_files(type: "page")`.
|
|
34
|
-
2. Read key files using `wiki_read_file(kind: "page" | "index" | "schema" | "log")`.
|
|
35
|
-
3. Search semantically with `wiki_search` when file-by-file navigation is not enough.
|
|
36
|
-
4. Create/update knowledge with `wiki_write_file(kind: "page", ...)`.
|
|
37
|
-
5. Run maintenance checks with `wiki_knowledge_graph` and `wiki_stats`.
|
|
38
|
-
|
|
39
|
-
### Mutation Rules
|
|
40
|
-
|
|
41
|
-
Prefer wiki mutation tools over generic filesystem edits for wiki content.
|
|
42
|
-
|
|
43
|
-
- Use `wiki_write_file(kind: "page")` for page updates.
|
|
44
|
-
- Use `wiki_write_file(kind: "schema")` for schema/convention updates.
|
|
45
|
-
|
|
46
|
-
These operations automatically keep derived systems aligned:
|
|
47
|
-
|
|
48
|
-
- index updates (`wiki/index.md`)
|
|
49
|
-
- log entries (`wiki/log.md`)
|
|
50
|
-
- QMD vector index under `$HOOMAN_HOME/wiki/.qmd/` for `wiki_search`
|
|
51
|
-
|
|
52
|
-
Do not manually edit `wiki/index.md` or `wiki/log.md` unless explicitly required.
|
|
53
|
-
|
|
54
|
-
### Authoring Guidelines For Pages
|
|
55
|
-
|
|
56
|
-
When creating or updating pages:
|
|
57
|
-
|
|
58
|
-
- use clear, stable titles and concise summaries
|
|
59
|
-
- include helpful frontmatter (`title`, `summary`, `tags`, `related`, `type`) when appropriate
|
|
60
|
-
- prefer one focused topic per page; split very broad topics into linked pages
|
|
61
|
-
- add `related` links to improve graph connectivity and discoverability
|
|
62
|
-
- avoid duplicating large blocks from existing pages; update/merge instead
|
|
63
|
-
|
|
64
|
-
### Retrieval Guidance
|
|
65
|
-
|
|
66
|
-
- Start with `wiki_list_files` + `wiki_read_file` for targeted exploration.
|
|
67
|
-
- Use `wiki_search` for semantic recall across many pages.
|
|
68
|
-
- Use `wiki_read_file(kind: "index")` to quickly understand current coverage.
|
|
69
|
-
- Use `wiki_read_file(kind: "log")` when timeline/history matters.
|
|
70
|
-
|
|
71
|
-
### Maintenance Guidance
|
|
72
|
-
|
|
73
|
-
Use `wiki_knowledge_graph` and `wiki_stats` to spot:
|
|
74
|
-
|
|
75
|
-
- orphan pages (weakly connected knowledge)
|
|
76
|
-
- missing cross-links (`related`)
|
|
77
|
-
- sparse or inconsistent tagging
|
|
78
|
-
- stale or redundant pages that should be merged or rewritten
|
|
79
|
-
|
|
80
|
-
When cleanup is needed, prefer page updates through wiki mutation tools instead
|
|
81
|
-
of ad hoc filesystem edits.
|
|
24
|
+
- Only `wiki_search` exists for wiki; there are no wiki write, list, or edit tools.
|
|
25
|
+
- Treat wiki as read-only from your side: search, then optionally read paths from the results.
|
|
@@ -9,11 +9,15 @@ export declare class System {
|
|
|
9
9
|
private readonly config;
|
|
10
10
|
private readonly mode;
|
|
11
11
|
private data;
|
|
12
|
+
private sourceFingerprint;
|
|
13
|
+
private compiledTemplate;
|
|
12
14
|
constructor(path: string, config: Config, mode?: SystemMode);
|
|
13
15
|
private staticPromptFiles;
|
|
14
16
|
private readBundledStaticPrompts;
|
|
15
17
|
private readBundledHarnessPrompts;
|
|
16
18
|
private readCwdAgentsInstructions;
|
|
19
|
+
/** Stats prompt sources so we only re-read disk + recompile Handlebars when files change. */
|
|
20
|
+
private computeSourceFingerprint;
|
|
17
21
|
private readRawText;
|
|
18
22
|
get content(): string;
|
|
19
23
|
/** Plain object for Handlebars (`{{name}}`, `{{llm.model}}`, …). */
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { existsSync, readFileSync } from "node:fs";
|
|
1
|
+
import { existsSync, readFileSync, statSync } from "node:fs";
|
|
2
2
|
import { dirname, join } from "node:path";
|
|
3
3
|
import { fileURLToPath } from "node:url";
|
|
4
4
|
import handlebars from "handlebars";
|
|
@@ -8,7 +8,7 @@ const { compile } = handlebars;
|
|
|
8
8
|
const STATIC_PROMPT_FILES = [
|
|
9
9
|
"identity.md",
|
|
10
10
|
"environment.md",
|
|
11
|
-
"
|
|
11
|
+
"memory.md",
|
|
12
12
|
"todo.md",
|
|
13
13
|
"thinking.md",
|
|
14
14
|
"filesystem.md",
|
|
@@ -40,6 +40,8 @@ export class System {
|
|
|
40
40
|
config;
|
|
41
41
|
mode;
|
|
42
42
|
data = "";
|
|
43
|
+
sourceFingerprint = "";
|
|
44
|
+
compiledTemplate = null;
|
|
43
45
|
constructor(path, config, mode = "default") {
|
|
44
46
|
this.path = path;
|
|
45
47
|
this.config = config;
|
|
@@ -48,8 +50,8 @@ export class System {
|
|
|
48
50
|
staticPromptFiles() {
|
|
49
51
|
return STATIC_PROMPT_FILES.filter((file) => {
|
|
50
52
|
switch (file) {
|
|
51
|
-
case "
|
|
52
|
-
return this.config.tools.
|
|
53
|
+
case "memory.md":
|
|
54
|
+
return this.config.tools.memory.enabled;
|
|
53
55
|
case "fetch.md":
|
|
54
56
|
return this.config.tools.fetch.enabled;
|
|
55
57
|
case "web-search.md":
|
|
@@ -68,7 +70,6 @@ export class System {
|
|
|
68
70
|
return this.config.tools.agents.enabled;
|
|
69
71
|
case "daemon.md":
|
|
70
72
|
return this.mode === "daemon";
|
|
71
|
-
case "thinking.md":
|
|
72
73
|
default:
|
|
73
74
|
return true;
|
|
74
75
|
}
|
|
@@ -114,6 +115,32 @@ export class System {
|
|
|
114
115
|
}
|
|
115
116
|
return readFileSync(path, "utf8").trim();
|
|
116
117
|
}
|
|
118
|
+
/** Stats prompt sources so we only re-read disk + recompile Handlebars when files change. */
|
|
119
|
+
computeSourceFingerprint() {
|
|
120
|
+
const parts = [];
|
|
121
|
+
const pushPath = (label, filePath) => {
|
|
122
|
+
if (!existsSync(filePath)) {
|
|
123
|
+
parts.push(`${label}:missing`);
|
|
124
|
+
return;
|
|
125
|
+
}
|
|
126
|
+
const st = statSync(filePath);
|
|
127
|
+
parts.push(`${label}:${st.mtimeMs}:${st.size}`);
|
|
128
|
+
};
|
|
129
|
+
pushPath("instructions", this.path);
|
|
130
|
+
const staticDir = join(dirname(fileURLToPath(import.meta.url)), "static");
|
|
131
|
+
for (const file of this.staticPromptFiles()) {
|
|
132
|
+
pushPath(`static:${file}`, join(staticDir, file));
|
|
133
|
+
}
|
|
134
|
+
const harnessDir = join(dirname(fileURLToPath(import.meta.url)), "harness");
|
|
135
|
+
for (const { key, file } of HARNESS_PROMPT_FILES) {
|
|
136
|
+
if (!this.config.prompts[key]) {
|
|
137
|
+
continue;
|
|
138
|
+
}
|
|
139
|
+
pushPath(`harness:${file}`, join(harnessDir, file));
|
|
140
|
+
}
|
|
141
|
+
pushPath("agents-md", join(process.cwd(), EXTRA_CWD_INSTRUCTIONS));
|
|
142
|
+
return parts.join("|");
|
|
143
|
+
}
|
|
117
144
|
readRawText() {
|
|
118
145
|
const instructions = existsSync(this.path)
|
|
119
146
|
? readFileSync(this.path, "utf8").trim()
|
|
@@ -148,16 +175,20 @@ export class System {
|
|
|
148
175
|
name: this.config.name,
|
|
149
176
|
llm: this.config.llm,
|
|
150
177
|
environment: getEnvironmentPromptContext(),
|
|
151
|
-
|
|
178
|
+
memory: this.config.tools.memory,
|
|
152
179
|
wiki: this.config.tools.wiki,
|
|
153
180
|
compaction: this.config.compaction,
|
|
154
181
|
mode: this.mode,
|
|
155
182
|
};
|
|
156
183
|
}
|
|
157
184
|
async reload() {
|
|
158
|
-
const
|
|
159
|
-
|
|
160
|
-
|
|
185
|
+
const fp = this.computeSourceFingerprint();
|
|
186
|
+
if (fp !== this.sourceFingerprint || this.compiledTemplate === null) {
|
|
187
|
+
const raw = this.readRawText();
|
|
188
|
+
this.compiledTemplate = compile(raw);
|
|
189
|
+
this.sourceFingerprint = fp;
|
|
190
|
+
}
|
|
191
|
+
this.data = this.compiledTemplate(this.context()).trim();
|
|
161
192
|
}
|
|
162
193
|
}
|
|
163
194
|
//# sourceMappingURL=system.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"system.js","sourceRoot":"","sources":["../../../src/core/prompts/system.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"system.js","sourceRoot":"","sources":["../../../src/core/prompts/system.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: hooman-config
|
|
3
|
-
description: Read and update Hooman's own config.json and instructions.md safely. Use when the user asks about Hooman config, custom instructions, model providers, LLM params, tool toggles, prompts, search,
|
|
3
|
+
description: Read and update Hooman's own config.json and instructions.md safely. Use when the user asks about Hooman config, custom instructions, model providers, LLM params, tool toggles, prompts, search, memory, wiki (knowledge search), agents, compaction, or ~/.hooman config settings.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Hooman Config
|
|
@@ -20,7 +20,7 @@ Use this skill when the user asks you to inspect, explain, or change Hooman's ow
|
|
|
20
20
|
2. Make the smallest JSON edit that satisfies the request. Do not rewrite unrelated sections or normalize formatting beyond valid pretty JSON.
|
|
21
21
|
3. `name` and `llms` are required. `llms` must be a **non-empty array** of entries (see below). `search`, `prompts`, `tools`, and `compaction` are optional in input, but Hooman expands them with defaults when loading.
|
|
22
22
|
4. Unknown keys are unsupported and may be dropped when Hooman parses and persists the config.
|
|
23
|
-
5.
|
|
23
|
+
5. `tools.memory` has only `enabled` (embedding model is fixed in code; vectors live in the app data directory). `tools.wiki` has only `enabled` (when on, the agent gets `wiki_search` over the indexed knowledge base; ingestion is not configured here).
|
|
24
24
|
6. Any change to `config.json` or `instructions.md` requires restarting the running Hooman agent/session before it takes effect.
|
|
25
25
|
|
|
26
26
|
## Full Config Shape
|
|
@@ -82,14 +82,8 @@ This is the default shape Hooman writes when `~/.hooman/config.json` is missing:
|
|
|
82
82
|
"sleep": {
|
|
83
83
|
"enabled": true
|
|
84
84
|
},
|
|
85
|
-
"
|
|
86
|
-
"enabled": false
|
|
87
|
-
"chroma": {
|
|
88
|
-
"url": "http://127.0.0.1:8000",
|
|
89
|
-
"collection": {
|
|
90
|
-
"memory": "memory"
|
|
91
|
-
}
|
|
92
|
-
}
|
|
85
|
+
"memory": {
|
|
86
|
+
"enabled": false
|
|
93
87
|
},
|
|
94
88
|
"wiki": {
|
|
95
89
|
"enabled": false
|
|
@@ -127,19 +121,17 @@ Runtime APIs may still expose a single active profile as `llm` (derived from the
|
|
|
127
121
|
|
|
128
122
|
### LLM Providers
|
|
129
123
|
|
|
130
|
-
`options.provider` must be one of:
|
|
124
|
+
`options.provider` must be one of the values Hooman registers at runtime (the config schema may list additional legacy enum values; stick to this set):
|
|
131
125
|
|
|
132
126
|
```json
|
|
133
127
|
[
|
|
134
128
|
"anthropic",
|
|
135
|
-
"
|
|
129
|
+
"bedrock",
|
|
136
130
|
"google",
|
|
137
131
|
"groq",
|
|
138
132
|
"moonshot",
|
|
139
|
-
"openai",
|
|
140
|
-
"tensorzero",
|
|
141
133
|
"ollama",
|
|
142
|
-
"
|
|
134
|
+
"openai",
|
|
143
135
|
"xai"
|
|
144
136
|
]
|
|
145
137
|
```
|
|
@@ -174,8 +166,6 @@ Provider notes (these refer to fields inside `options.params` unless noted):
|
|
|
174
166
|
- `moonshot`: `params.apiKey`, `baseURL`, `headers`, and `fetch` configure the provider. Other keys are forwarded as Vercel model config.
|
|
175
167
|
- `xai`: `params.apiKey`, `baseURL`, and `headers` configure the provider. Other keys are forwarded as Vercel model config.
|
|
176
168
|
- `openai`: Strands **OpenAIModel** (Chat Completions). `params.apiKey` (or env `OPENAI_API_KEY`), optional `clientConfig` (e.g. `baseURL` for an OpenAI-compatible HTTP API). `model` becomes `modelId`. A small client patch splits final-chunk `usage` when it arrives with non-empty `choices` so Strands can record token usage.
|
|
177
|
-
- `bifrost`: Same Chat Completions `params` shape as `openai`, but **`StrandsBifrostModel`** — use for a Bifrost gateway fronting Moonshot/Kimi. Set `clientConfig.baseURL` to the gateway origin (e.g. `http://localhost:8080`); `/openai/v1` is appended automatically. Handles `delta.reasoning`, missing initial `delta.role`, Moonshot `reasoning_content` on tool turns, and final-chunk usage.
|
|
178
|
-
- `tensorzero`: Same Chat Completions shape as `openai`, but **`StrandsTensorZeroModel`** — use for a [TensorZero](https://tensorzero.com) gateway’s OpenAI-compatible route (e.g. `clientConfig.baseURL` like `http://localhost:3000/openai/v1`). Maps gateway `tensorzero_extra_content` thoughts to Strands reasoning deltas and normalizes final-chunk usage. `model` is typically `tensorzero::function_name::<name>` (or other TensorZero model id strings the gateway accepts). For gateway tag-based rate limits, set `params.params["tensorzero::tags"]` (e.g. `user_id`) in the model entry in config.
|
|
179
169
|
- `ollama`: `params.host`, `keepAlive`, `options`, and `think` configure the Ollama wrapper. `think` may be `true`, `false`, `"high"`, `"medium"`, or `"low"`.
|
|
180
170
|
- `bedrock`: `params.region`, `clientConfig`, and optional `apiKey` configure Bedrock access. Put AWS credentials under `params.clientConfig.credentials` with `accessKeyId`, `secretAccessKey`, and optional `sessionToken`; put an AWS CLI/shared-config profile name in `params.clientConfig.profile`. If credentials and profile are omitted, Bedrock uses the AWS SDK default credential chain, including environment variables and AWS CLI/shared credentials. Other keys are forwarded as Bedrock model options, such as `temperature`, `maxTokens`, `stream`, and `cacheConfig`.
|
|
181
171
|
|
|
@@ -348,42 +338,14 @@ Simple toggles:
|
|
|
348
338
|
"fetch": { "enabled": true },
|
|
349
339
|
"filesystem": { "enabled": true },
|
|
350
340
|
"shell": { "enabled": true },
|
|
351
|
-
"sleep": { "enabled": true }
|
|
341
|
+
"sleep": { "enabled": true },
|
|
342
|
+
"memory": { "enabled": true },
|
|
343
|
+
"wiki": { "enabled": true }
|
|
352
344
|
}
|
|
353
345
|
}
|
|
354
346
|
```
|
|
355
347
|
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
```json
|
|
359
|
-
{
|
|
360
|
-
"tools": {
|
|
361
|
-
"ltm": {
|
|
362
|
-
"enabled": true,
|
|
363
|
-
"chroma": {
|
|
364
|
-
"url": "http://127.0.0.1:8000",
|
|
365
|
-
"collection": {
|
|
366
|
-
"memory": "memory"
|
|
367
|
-
}
|
|
368
|
-
}
|
|
369
|
-
}
|
|
370
|
-
}
|
|
371
|
-
}
|
|
372
|
-
```
|
|
373
|
-
|
|
374
|
-
Wiki:
|
|
375
|
-
|
|
376
|
-
```json
|
|
377
|
-
{
|
|
378
|
-
"tools": {
|
|
379
|
-
"wiki": {
|
|
380
|
-
"enabled": true
|
|
381
|
-
}
|
|
382
|
-
}
|
|
383
|
-
}
|
|
384
|
-
```
|
|
385
|
-
|
|
386
|
-
Semantic search uses a local QMD index at `$HOOMAN_HOME/wiki/.qmd/index.sqlite` (not Chroma).
|
|
348
|
+
With `wiki` enabled, the model only receives **`wiki_search`**: semantic retrieval over the knowledge index. There are no wiki write or list tools in config.
|
|
387
349
|
|
|
388
350
|
Agents:
|
|
389
351
|
|
|
@@ -398,7 +360,9 @@ Agents:
|
|
|
398
360
|
}
|
|
399
361
|
```
|
|
400
362
|
|
|
401
|
-
Defaults: `todo`, `fetch`, `filesystem`, `shell`, `sleep`, and `agents` enabled; `
|
|
363
|
+
Defaults: `todo`, `fetch`, `filesystem`, `shell`, `sleep`, and `agents` enabled; `memory` and `wiki` disabled. Memory uses a local SQLite index and the built-in embedding model URI in code (`DEFAULT_EMBED_MODEL` in `core/config.ts`). MCP servers and installed skills are not controlled by these toggles; do not inspect or edit them for this skill.
|
|
364
|
+
|
|
365
|
+
`agents`: the default file Hooman writes when `config.json` was missing includes `tools.agents.concurrency: 2`. On load, if `concurrency` is absent (for example `tools` or `tools.agents` is omitted), the merged config uses `3` until you set it explicitly.
|
|
402
366
|
|
|
403
367
|
## Instructions
|
|
404
368
|
|
|
@@ -30,17 +30,11 @@ export const INTERNAL_ALWAYS_ALLOWED = new Set([
|
|
|
30
30
|
"convert_time",
|
|
31
31
|
"get_current_time",
|
|
32
32
|
// Wiki
|
|
33
|
-
"wiki_knowledge_graph",
|
|
34
|
-
"wiki_list_files",
|
|
35
|
-
"wiki_read_file",
|
|
36
33
|
"wiki_search",
|
|
37
|
-
"wiki_stats",
|
|
38
|
-
"wiki_write_file",
|
|
39
34
|
// Long-term memory
|
|
40
|
-
"
|
|
41
|
-
"
|
|
42
|
-
"
|
|
43
|
-
"update_memory",
|
|
35
|
+
"memory_add",
|
|
36
|
+
"memory_archive",
|
|
37
|
+
"memory_search",
|
|
44
38
|
// Filesystem (list / search / metadata)
|
|
45
39
|
"directory_tree",
|
|
46
40
|
"get_file_info",
|
|
@@ -76,14 +70,9 @@ export const PLAN_MODE_VISIBLE = new Set([
|
|
|
76
70
|
"convert_time",
|
|
77
71
|
"get_current_time",
|
|
78
72
|
// Wiki
|
|
79
|
-
"wiki_knowledge_graph",
|
|
80
|
-
"wiki_list_files",
|
|
81
|
-
"wiki_read_file",
|
|
82
73
|
"wiki_search",
|
|
83
|
-
"wiki_stats",
|
|
84
|
-
"wiki_write_file",
|
|
85
74
|
// Long-term memory
|
|
86
|
-
"
|
|
75
|
+
"memory_search",
|
|
87
76
|
// Filesystem (list / search / metadata)
|
|
88
77
|
"directory_tree",
|
|
89
78
|
"get_file_info",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-approvals.js","sourceRoot":"","sources":["../../../src/core/state/tool-approvals.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EACL,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE3E,oFAAoF;AACpF,MAAM,mBAAmB,GAAG,IAAI,CAC9B,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EACvC,oBAAoB,CACrB,CAAC;AAWF,MAAM,yBAAyB,GAAG,cAAc,CAAC;AAEjD,MAAM,cAAc,GAAG,WAAW,CAAC;AACnC,MAAM,wBAAwB,GAAG,qBAAqB,CAAC;AACvD,MAAM,eAAe,GAAG,YAAY,CAAC;AACrC,MAAM,cAAc,GAAG,WAAW,CAAC;AACnC,MAAM,CAAC,MAAM,oBAAoB,GAAG,iBAAiB,CAAC;AACtD,MAAM,CAAC,MAAM,mBAAmB,GAAG,gBAAgB,CAAC;AAEpD,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAC;IAC7C,oBAAoB;IACpB,2BAA2B;IAC3B,QAAQ;IACR,cAAc;IACd,WAAW;IACX,OAAO;IACP,sBAAsB;IACtB,oBAAoB;IACpB,QAAQ;IACR,OAAO;IACP,oBAAoB;IACpB,KAAK;IACL,OAAO;IACP,cAAc;IACd,kBAAkB;IAClB,OAAO;IACP,
|
|
1
|
+
{"version":3,"file":"tool-approvals.js","sourceRoot":"","sources":["../../../src/core/state/tool-approvals.ts"],"names":[],"mappings":"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"}
|
package/dist/core/tools/index.js
CHANGED
|
@@ -8,5 +8,4 @@ export { createThinkingTools } from "./thinking.js";
|
|
|
8
8
|
export { createTimeTools } from "./time.js";
|
|
9
9
|
export { createTodoTools } from "./todo.js";
|
|
10
10
|
export { createWebSearchTools } from "./web-search.js";
|
|
11
|
-
export { createWikiTools } from "./wiki.js";
|
|
12
11
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function md5(input: string): string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hashing.js","sourceRoot":"","sources":["../../../src/core/utils/hashing.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,MAAM,UAAU,GAAG,CAAC,KAAa;IAC/B,OAAO,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC9D,CAAC"}
|
|
@@ -7,3 +7,6 @@ export declare const attachmentsPath: () => string;
|
|
|
7
7
|
export declare const plansPath: () => string;
|
|
8
8
|
export declare const skillsPath: () => string;
|
|
9
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
|
@@ -9,28 +9,15 @@ export const basePath = () => {
|
|
|
9
9
|
}
|
|
10
10
|
return join(homedir(), APP_FOLDER);
|
|
11
11
|
};
|
|
12
|
-
export const configJsonPath = () =>
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
export const
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
export const
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
export const
|
|
22
|
-
|
|
23
|
-
};
|
|
24
|
-
export const attachmentsPath = () => {
|
|
25
|
-
return join(basePath(), "attachments");
|
|
26
|
-
};
|
|
27
|
-
export const plansPath = () => {
|
|
28
|
-
return join(basePath(), "plans");
|
|
29
|
-
};
|
|
30
|
-
export const skillsPath = () => {
|
|
31
|
-
return join(basePath(), "skills");
|
|
32
|
-
};
|
|
33
|
-
export const wikiPath = () => {
|
|
34
|
-
return join(basePath(), "wiki");
|
|
35
|
-
};
|
|
12
|
+
export const configJsonPath = () => join(basePath(), "config.json");
|
|
13
|
+
export const instructionsMdPath = () => join(basePath(), "instructions.md");
|
|
14
|
+
export const mcpJsonPath = () => join(basePath(), "mcp.json");
|
|
15
|
+
export const sessionsPath = () => join(basePath(), "sessions");
|
|
16
|
+
export const attachmentsPath = () => join(basePath(), "attachments");
|
|
17
|
+
export const plansPath = () => join(basePath(), "plans");
|
|
18
|
+
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");
|
|
36
23
|
//# sourceMappingURL=paths.js.map
|