docs(engine_fn): reshape the iii skill for on-demand reads - #2012
docs(engine_fn): reshape the iii skill for on-demand reads#2012rohitg00 wants to merge 4 commits into
Conversation
The registry `iii` bundle was a 2.3k-word file whose frontmatter declared it "meant for system-prompt injection; do not re-fetch". That model predates on-demand skills: every token lands in every prompt or none land anywhere, and orientation, authoring, and operating content arrive interleaved. Rewrite it as a 530-word `type: index` overview shaped for directory::skills::get: what iii is and how a call flows, extending (worker add, registry, the llms.txt route to per-language SDK references), operating (CLI, config hot-reload, configuration worker, console), and where every deeper reference lives (live registry introspection, per-worker skills via directory::skills::index/get, docs pages via llms.txt, the curated authoring catalog under skills/). API signatures stay in the docs, fetched per page, rather than duplicated here, so the skill does not rot when reference pages change. Verified against build_skills_payload.py: the file maps to the index.md payload key, landing on rigs as the `iii` namespace overview.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
📝 WalkthroughWalkthrough
ChangesSkill document rewrite
Estimated code review effort: 1 (Trivial) | ~5 minutes Suggested reviewers: Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 3
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@engine/src/workers/engine_fn/skills/SKILL.md`:
- Around line 17-20: Update the “Operating” section to accurately document
configuration-worker behavior: persisted live settings are stored under
./config/, worker settings in config.yaml are used only as the initial seed, and
direct edits under ./config/ hot-reload without an engine reload. State that
invalid direct edits are rejected and the previous valid value remains active,
while preserving the existing configuration::set and console editing paths.
- Around line 21-23: Update the “Where the depth lives” registry-discovery
guidance to mention that optional tags declared in each worker’s iii.worker.yaml
manifest are surfaced as discovery metadata. Place this detail alongside the
per-worker registry information, without changing the existing discovery
commands or documentation references.
- Around line 21-23: Update the curated authoring skills command in the “Where
the depth lives” section to invoke a reviewed, exact version of the skills CLI
rather than the unpinned `npx skills add` form. Preserve the existing repository
reference and intended `skills add` behavior while pinning the package version
explicitly.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository UI
Review profile: CHILL
Plan: Pro Plus
Run ID: f320b713-3a29-4d90-a2ce-cb65feabcd64
📒 Files selected for processing (1)
engine/src/workers/engine_fn/skills/SKILL.md
…n path Agents on the mesh install workers by calling the worker::add function with a registry source; iii worker add is the terminal form of the same operation. The skill now leads with the function and names the CLI as the human equivalent, so a mesh agent never reaches for a shell it does not have.
… edit guarantees config.yaml values are the initial seed only; live settings persist under ./config/ (one file per worker), direct edits there hot-reload without an engine reload, and an invalid edit is rejected with the previous valid value staying in effect. Path verified against the fs adapter default (./config, with ./data/configuration as the legacy fallback).
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
engine/src/workers/engine_fn/skills/SKILL.md (1)
23-23: 🔒 Security & Privacy | 🟠 Major | ⚡ Quick winPin the
npxCLI version.
npx skills add ...can download and execute the latest package, so a compromised upstream release would run during authoring. Use an exact reviewed version, e.g.npx skills@<reviewed-version> add iii-hq/iii/skills.As per path instructions, all PRs must be checked for supply-chain compromises and malicious code.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@engine/src/workers/engine_fn/skills/SKILL.md` at line 23, Update the curated authoring skills command in the documentation to pin the npx skills CLI to an exact reviewed version, using the existing “npx skills add iii-hq/iii/skills” reference as the target. Preserve the repository and subcommand while replacing the unpinned invocation, and ensure the selected version is explicitly reviewed before publication.Sources: Path instructions, Linters/SAST tools
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Outside diff comments:
In `@engine/src/workers/engine_fn/skills/SKILL.md`:
- Line 23: Update the curated authoring skills command in the documentation to
pin the npx skills CLI to an exact reviewed version, using the existing “npx
skills add iii-hq/iii/skills” reference as the target. Preserve the repository
and subcommand while replacing the unpinned invocation, and ensure the selected
version is explicitly reviewed before publication.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository UI
Review profile: CHILL
Plan: Pro Plus
Run ID: ec3940ad-e085-4396-b11e-dd6637ace7e3
📒 Files selected for processing (1)
engine/src/workers/engine_fn/skills/SKILL.md
Problem
The registry
iiiskill (the engine's own knowledge bundle fromengine/src/workers/engine_fn/skills/) is a 2.3k-word file whose frontmatter says "meant for system-prompt injection; do not re-fetch". That predates on-demand skills: the whole document lands in every prompt or nowhere, orientation and authoring and operating content arrive interleaved, and agents reading it for one question pay for all of it.Change
One file, rewritten: a 530-word
type: indexoverview shaped fordirectory::skills::get.iii worker add, the in-mesh registry proxy, and the llms.txt route to per-language SDK reference pages, with the rule to never write SDK code from memory.config.yamlhot-reload semantics, the configuration worker layer, console.directory::skills::index/get, docs pages per topic, and the curated authoring catalog underskills/for coding agents.API signatures are delegated to the docs (fetched per page via the llms.txt index) rather than duplicated, so the skill does not rot when reference pages change. The
type: indexfrontmatter matches the conventiondirectory::skills::indexselects on.Verification
Run against
.github/scripts/build_skills_payload.py: the file maps to theindex.mdpayload key, landing on rigs as theiiinamespace overview (idiii). Content claims were checked against a live engine this week: every function id named exists in the running registry, and https://iii.dev/docs/llms.txt returns 200 with per-page markdown reachable from it.Publishing note: the skills publish workflow is dispatch-only, and the registry currently serves no
iiientry, so rigs keep whatever bundle they downloaded last. A dispatch after merge restores it at the new shape.Summary by CodeRabbit