Repository navigation
feat(queen): TOOLS — layer five, the tri CLI and MCP servers as spec cards (key t) - #978
Merged
Merged
Conversation
Tool Explorer at #/tools over the vendored specs/tools/{tri,mcp}/*.t27
(62 specs: 52 tri commands with 124 actions, 10 MCP servers with 235 tools,
5 external), generated by scripts/agents-from-specs.mjs through the compiler
wasm into public/tools/spec-tools.json with families, tri-by-agent and
mcp-by-repo groups, a full-text index, agent links checked in both
directions and skill cross-links from the skill specs' own text. Detail:
spec panel first, then synopsis / server, when to use, who owns it, skills,
source (file @ pinned sha); controls open the source and the config.
Rebased onto main after #979 (FUNCTIONS on key 0, ten modules): TOOLS is the
eleventh module on key t -- the digits are spent, the rail hint says
"(key t)" / "(клавиша t)", HUD_KEYS ends ...0,t and the QA contracts hold
the key string 1234567890t. One generator carries both layers
(functionSpecs + toolSpecs, one specsById, one RU bundle: skills 26, crons
33, agents 27, functions 28, tools 62). The ladder is one object shared by
the agents, tools and functions catalogs -- Specs -> Skills -> Crons ->
Agents -> Tools -> Functions -- every count the length of a spec catalog
(functions from spec-functions.json), and all three explorers draw six
steps. ModulesBlock copy -> eleven; viewport contract counts eleven
commands. Agents C, E, T, V, W carry TOOLS from the t27 specs.
Recorded, not resolved: t27 specs/tools/README.md and specs/functions/README.md
both call themselves layer 5; the functions copy on the site says so.
check:tools (new), check:agents extended; generator tests 92/92;
typecheck ratchet 179/26 and eslint 180 unchanged. Vendored README.md of
specs/{skills,crons,agents,i18n,tools} refreshed to the t27 bytes.
Specs vendored byte-identical from gHashTag/t27 feat/specs-tools 95c9b61b
(PR #3554, issue #3547); pin 95c9b61.
gHashTag
force-pushed
the
feat/queen-tools-layer5
branch
from
September 9, 2026 17:10
7b8d160 to
4dd56a0
Compare
github-actions Bot
added a commit
that referenced
this pull request
Sep 9, 2026
feat(queen): TOOLS -- the tri CLI and MCP servers as spec cards (key t) (#978) Tool Explorer at #/tools over the vendored specs/tools/{tri,mcp}/*.t27 (62 specs: 52 tri commands with 124 actions, 10 MCP servers with 235 tools, 5 external), generated by scripts/agents-from-specs.mjs through the compiler wasm into public/tools/spec-tools.json with families, tri-by-agent and mcp-by-repo groups, a full-text index, agent links checked in both directions and skill cross-links from the skill specs' own text. Detail: spec panel first, then synopsis / server, when to use, who owns it, skills, source (file @ pinned sha); controls open the source and the config. Rebased onto main after #979 (FUNCTIONS on key 0, ten modules): TOOLS is the eleventh module on key t -- the digits are spent, the rail hint says "(key t)" / "(клавиша t)", HUD_KEYS ends ...0,t and the QA contracts hold the key string 1234567890t. One generator carries both layers (functionSpecs + toolSpecs, one specsById, one RU bundle: skills 26, crons 33, agents 27, functions 28, tools 62). The ladder is one object shared by the agents, tools and functions catalogs -- Specs -> Skills -> Crons -> Agents -> Tools -> Functions -- every count the length of a spec catalog (functions from spec-functions.json), and all three explorers draw six steps. ModulesBlock copy -> eleven; viewport contract counts eleven commands. Agents C, E, T, V, W carry TOOLS from the t27 specs. Recorded, not resolved: t27 specs/tools/README.md and specs/functions/README.md both call themselves layer 5; the functions copy on the site says so. check:tools (new), check:agents extended; generator tests 92/92; typecheck ratchet 179/26 and eslint 180 unchanged. Vendored README.md of specs/{skills,crons,agents,i18n,tools} refreshed to the t27 bytes. Specs vendored byte-identical from gHashTag/t27 feat/specs-tools 95c9b61b (PR #3554, issue #3547); pin 95c9b61. Co-authored-by: gHashTag <gHashTag@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Queen TOOLS -- layer five (key
0), Tool Explorer#/toolsStacked on #976 (
feat/queen-agents-layer4); retarget tomainonce #976 merges. Source specs: gHashTag/t27#3547 / t27 PRfeat/specs-tools(vendored byte-identical atf726e2e4).What
src/pages/ToolExplorer.tsx(route#/tools,?embed=1,?tool=<id>): library with two families (tri CLI / MCP servers) and a search over the generated full-text index (command, tool, about, actions, letters); filters owned / no owner; tags family/repo/owner/witness/external. Detail: spec panel first (AgentSpecPanel kind="tool"), then Synopsis (command, clap variant, args, actions with their about text) or Server (launch line, transport, version, env, config, tools table name / description / input-schema keys, resources), When to use, Who owns it (agent chips ->#/agents?agent=), Skills (via COMMAND / SUMMARY_EN), Source (file@sha, about source, witness, pinned commit). Controls: Edit in the spec, Open source, Open config. EN + RU.scripts/agents-from-specs.mjs->public/tools/spec-tools.json: families,triByAgent/mcpByRepogroups, agent links checked in both directions (unknown letter / unknown tool / one-way binding fail the build), skill cross-links from the skill specs' own text,ladder {specs, skills, crons, agents, tools}. Agents'toolsis now{id, ok}[].qa/tools-spec-contract.mjs(npm run check:tools),qa/agents-spec-contract.mjsextended (Queen views 10 / modules 10 / keys1234567890),qa/explorer-language-contract.mjsregisters the page,qa/queen-viewport-contract.mjscounts ten commands. Generator tests +6 (36/36).toolson key0(glyph⟐, monochrome), directive + count strip (owned / no owner / typecheck), aria label;queenHud.tsHUD_VIEWS +tools;QueenAgentskindtools; ModulesBlock copy nine -> ten. Ladder header on Agent and Tool Explorer now five layers with live counts. Agent Explorer 'Tools' section links to#/tools?tool=.scripts/sync-agents-experience.mjs: the published snapshot no longer records the checkout's absolute path (commit stays the witness).Measured: tools 62 specs (tri 52, 124 actions; mcp 10, 235 tools, 5 external), typecheck ok 62/62, with agents 5, with skills 5, witness source-parse 62 / help-output 0; agents with tools 5 (C, E, T, V, W); ru 62/62; pinned at
f726e2e.Checks run:
node scripts/agents-from-specs.mjs,node --test scripts/agents-from-specs.test.mjs(36/36),npm run check:tools,npm run check:agents,npm run prebuild,npm run build,npm run typecheck:ratchet(179/26 = baseline),npx eslint .(180 = baseline; new files clean),check:spec-catalog,check:skills-catalog,check:crons-catalog,check:explorer-languages(6 pages),check:queen-languages(270/270),check:shared-core,check:queen-*(pre-existing FAIL unchanged: honesty, cycle, factory, review;check:queen-viewportwithCHROME_PATHreports the pre-existing undeclared-scroller / alerts-slot failures and nocommands=count failure). Screenshots (local Chromium, RU): Queen?tab=toolsat 1280x600 / 700 / 900 -- rail fits ten items above «Свернуть»;#/tools?tool=tri/celland?tool=mcp/tri-mcp.Boundaries: no regex over
.t27; manifests not hand-edited;.tool_artifacts/untouched; no secrets. Known infra reds on this repo (claude-review, pr-opened, Brain Health). Not merged -- review requested.phi^2 + 1/phi^2 = 3 | TRINITY