Files
LLeMbas-CLI/src/tool/spec-vars.ts
T
HomerandClaude Opus 5.5 539896494f Harness spec 1.2.0: the library's tools fit both projects; the CLI implements it
The CLI's facts in memory, notes_search, note_manage, skills_list,
skill_view and skill_manage are `variables` now, filled with the CLI's own
values (src/tool/spec-vars.ts): every description and parameter list the CLI
sends is word for word what 1.1.0 said, except note and document ids, which
are strings on both sides (a number is still taken). Descriptions are
filled by the prompt texts' rules, parameter descriptions too. `narrow`
says what a project offers of a shared tool's parameters. Memory's changes
are one pure function (applyOps). Conformance: fill, narrow, memory.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-20 11:45:14 +00:00

28 lines
1.8 KiB
TypeScript

// The CLI's values for the harness spec's `{{variables}}` in the library's tool descriptions
// (harness/tools/<name>.json `variables`): the facts of this machine's library — files, projects,
// supporting files, sessions — where LLeMbas fills in its own. Filled where each tool is defined
// (described); the per-session ones (task, bash) are filled in src/app.ts.
export const CLI_VARS: Record<string, Record<string, string>> = {
memory: {
project_home: " Anything about this project belongs in its AGENTS.md or the project's decision log, not here.",
targets: "'user' — who the user is: name, role, preferences, how they like to work. 'memory' — your own notes: environment, conventions, tool quirks, lessons.",
past_work: " (session_search finds past work)",
when_seen: "What you save now is in the files at once but appears in your system prompt only from the next session.",
target_values: "'memory' for your notes, 'user' for the user profile, 'project' for facts about this project only (kept in its .agent/local, never committed).",
},
notes_search: { kept: ", global or this project's; both are searched" },
note_manage: {
create_scope: ", scope",
scope: 'scope: "project" (default, when there is a project) or "global".',
records: ", or the project's own records (tasks, decisions)",
},
skills_list: { category: ", category" },
skill_view: { files: ", and the list of its supporting files (references, templates, scripts, assets). To read one of those, call again with file_path." },
skill_manage: {
create_where: " Global unless where: project.",
files: "write_file / remove_file: supporting files under references/, templates/, scripts/ or assets/.",
revert_deleted: " (a deleted one too)",
index_cut: " — only that much shows in the skills list",
},
}