# OpenSquilla MetaSkill User Guide MetaSkill lets OpenSquilla move from figuring out complex work from scratch on every turn to reusable, explicitly launchable, auditable, and improvable task protocols. A normal conversation solves one request. A MetaSkill preserves a way of doing high-value work. ## Important Notice Some MetaSkills in OpenSquilla, and some of the skills they call, are authored, revised, or composed with AI assistance based on intended functionality, available capabilities, and usage scenarios. This means: - MetaSkills are not merely a collection of fully hand-written scripts. They are part of a system where AI can help formalize and evolve reusable task protocols. - AI-authored or AI-assisted MetaSkills should be reviewed through structural validation, trigger-surface checks, runtime testing, human review, and safety-boundary assessment before they are treated as ready for use. - MetaSkill outputs are decision-support materials and work-product drafts. They are not final professional advice in legal, medical, financial, hiring, academic, security, or other high-stakes contexts. - Actions such as publishing, applying, installing, paying, signing, messaging, or modifying production systems require explicit user authorization and remain the user's responsibility. - When a MetaSkill relies on search, document parsing, LLM judgment, or third-party tools, the result may be affected by source quality, model limitations, tool availability, context completeness, and time-sensitive changes. - Users should review facts, citations, assumptions, risks, and unverifiable claims, especially in high-stakes situations. In short: MetaSkill turns high-value work into reusable, auditable, and improvable AI collaboration protocols. It does not remove the need for review, judgment, or accountability. ## What It Is OpenSquilla is an open-source AI agent runtime. MetaSkill is its task-protocol layer. A MetaSkill does not introduce new execution atoms. It defines a way to organize existing atoms, such as skills, tools, LLM calls, and sub-agents, into a reusable task protocol. The analogy is a Makefile and shell commands. A Makefile does not replace commands; it defines how commands are composed. A MetaSkill does not replace skills or tools; it tells OpenSquilla how a class of high-value work should be understood, structured, checked, and delivered. MetaSkill provides four main advantages: - protocolized capability captured in a `SKILL.md` file with `kind: meta` and `composition.steps`; - explicit launch through `/meta`, with optional automatic triggering only when `meta_skill.auto_trigger = true`; - auditable and replayable step inputs, outputs, status, and results; - improvable over time as repeated collaboration patterns become proposals. ## Default Launch Model MetaSkills are manual-only by default. On supported chat surfaces, use `/meta` to list available workflows and `/meta ` to run one. This keeps workflow launches deliberate, reviewable, and easier to explain. Web chat and the CLI gateway TUI support both list and run: ```text /meta /meta meta-kid-project-planner ``` Channel surfaces support `/meta` listing only. Standalone CLI chat requires gateway mode for `/meta`. To restore the older automatic behavior, set: ```toml [meta_skill] auto_trigger = true ``` With `auto_trigger = true`, OpenSquilla may consider MetaSkills during ordinary natural-language turns. Leave it off when you want workflows to run only after an explicit `/meta ` command. ## User Mental Model Using a MetaSkill is not just asking a question. It is delegating OpenSquilla to produce a reviewable result. A strong MetaSkill request contains four things: 1. Outcome: what you want to receive. 2. Context: materials, entities, time range, and constraints that matter. 3. Standard: what "good" means for this task. 4. Boundaries: what must not happen, what must not be invented, and what requires confirmation. Example: ```text /meta meta-kid-project-planner I need a safe weekend project plan, not a generic list of ideas. Use only materials that are easy to buy locally. Separate adult-only steps from child-safe steps. Do not include flames, blades, solvents, or risky chemicals. ``` The user defines the target and standard; OpenSquilla organizes the execution. ## Current Built-In MetaSkills The retained built-in MetaSkills cover a focused set of high-value task classes. | MetaSkill | Positioning | | --- | --- | | `meta-kid-project-planner` | Produces safe, age-appropriate plans for school projects, show-and-tell, or science activities. | | `meta-paper-write` | Supports academic drafts, manuscript structure, citation planning, experiment placeholders, and LaTeX/PDF paths. | | `meta-short-drama` | Produces short-drama scripts, visual prompts, video assembly plans, subtitles, and rendered local video artifacts. | | `meta-skill-creator` | Turns repeated multi-skill collaboration patterns into new MetaSkill proposals. | These are designed around quality over quantity. Immature, duplicate, or single-skill wrapper MetaSkills should not remain in the bundled catalog. ## Requirements Before Running MetaSkills The Skill page is the source of truth for current readiness. Open the skill detail dialog and check the **Requirements** section before running workflows that export files, compile PDFs, or render video. Common setup surfaces: - Paper/PDF workflows such as `meta-paper-write` require `xelatex` and `bibtex` on `PATH`. Install a TeX distribution such as TeX Live, MiKTeX, or BasicTeX before requesting compiled PDFs. - Video workflows such as `meta-short-drama` require `ffmpeg` and `ffprobe` on `PATH` for clip animation, merging, and subtitle burn-in. - Office-document workflows roll up requirements from child skills such as `docx`, `xlsx`, `pdf-toolkit`, and `pptx`; these usually surface Python package requirements in the Skill page. - Search, weather, image, and video-provider steps may require configured API keys or provider credentials. The workflow should treat missing credentials as setup blockers rather than silently degrading output. ## Two Ways to Use MetaSkill ### Default: Explicit Command Start the workflow with `/meta ` and then describe the outcome: ```text /meta meta-kid-project-planner Plan a safe 20-minute balcony plant science project for a 7-year-old. Include materials, steps, safety notes, and a simple presentation outline. ``` This is the normal 0.4 release-line path. It is best for important, expensive, or easily confused tasks because the workflow launch is explicit. ### Compatibility: Automatic Triggering If `meta_skill.auto_trigger = true` is set, OpenSquilla can consider MetaSkills from natural-language intent: ```text Use meta-skill `meta-kid-project-planner`. Plan a safe 20-minute balcony plant science project for a 7-year-old. Include materials, steps, safety notes, and a simple presentation outline. ``` This mode is for users who intentionally want the older auto-trigger behavior. It is not the default. ## Low-Cost, High-Quality Request Template Recommended template: ```text /meta Outcome: Context: Decision standard: Expected output: Constraints: Do not: ``` Example: ```text /meta meta-kid-project-planner Outcome: plan a child-safe weekend science project. Context: 7-year-old, balcony plants, 20 minutes of activity, ordinary household materials only. Decision standard: safe, age-appropriate, low mess, and easy to present at school. Expected output: materials list, adult setup, child steps, safety notes, and a presentation outline. Constraints: avoid flames, blades, solvents, and risky chemicals. Do not: ask the child to do adult-only setup alone. ``` Useful constraints: - Do not invent missing facts. - Separate facts, assumptions, and recommendations. - Use only pasted material unless sources are available. - Do not submit, publish, install, pay, send, or sign automatically. - Ask me if a decision depends on missing information. ## Built-In MetaSkill Usage Patterns ### `meta-kid-project-planner` Use for child school projects, show-and-tell, science demos, and safe creative activities. Good fit: - science fair; - show-and-tell; - classroom demonstration; - child-safe craft or experiment; - low-burden parent preparation. High-quality request: ```text /meta meta-kid-project-planner Help my child prepare a second-grade science fair project about plant growth. We have beans, paper cups, cotton, water, and a sunny windowsill. Keep it safe and simple. Give me: - materials list - 3-day plan - what the child should observe - short presentation script - what remains unknown ``` Expected result: safe, age-appropriate, source-strict output. It should not invent weather, school requirements, or child preferences. ### `meta-paper-write` Use for academic papers, research manuscripts, and LaTeX-oriented deliverables. Good fit: - compact paper skeleton; - section structure; - citation plan; - experiment and figure/table placeholders; - LaTeX/PDF path when explicitly requested. PDF compilation requires `xelatex` and `bibtex` on `PATH`. If those binaries are missing, use the LaTeX source output or install TeX Live, MiKTeX, or BasicTeX before asking for a compiled PDF. High-quality request: ```text /meta meta-paper-write Draft a compact research paper skeleton on retrieval-augmented generation for customer-support knowledge bases. Include: - title - abstract - related work plan - method outline - experiment placeholders - figure/table placeholders - citation plan Keep it compact first. Do not write a full manuscript unless I ask. ``` Expected result: a paper-shaped deliverable, not a generic essay. Citations should not be presented as verified sources unless actually verified. ### `meta-skill-creator` Use to create a new MetaSkill proposal. Good fit: - turning repeated multi-skill collaboration into a reusable capability; - defining trigger surfaces; - composing existing skills; - adding validation and risk checks; - producing a proposal for review. Poor fit: - creating a normal single-purpose skill; - analyzing existing skill lists without creating anything; - asking what MetaSkill is; - pasting old pages for diagnosis. High-quality request: ```text /meta meta-skill-creator Create a new meta-skill for product launch briefs. It should search current sources, collect product context, draft a launch memo, generate a DOCX handoff, check evidence gaps, and avoid publishing anything automatically. Please propose: - name - description - triggers - steps - validation gates - collision checks ``` Expected result: a proposal, not an immediate unreviewed production rollout. ## Avoiding Accidental Activation If you paste old chat history, Web UI dumps, prompt examples, skill lists, or test material, mark it as quoted context: ```text The following is quoted context, not my current request. Do not run any skill. Do not create or persist any proposal. Only analyze this text. ``` This matters because historical material may contain trigger words. Without a clear boundary, the system may confuse quoted content with current intent. If you only want to analyze a MetaSkill and do not want proposal creation: ```text Only analyze. Do not create, assemble, preview, or persist any meta-skill proposal. ``` ## Run Progress Ribbon While a MetaSkill runs, the WebUI shows a horizontal ribbon at the top of the agent reply listing every step in the workflow. The currently running chip is highlighted; succeeded steps show ✓, skipped ↷, failed ✗, and `on_failure` substitutes show ⇄. Click any chip to scroll to that step's tool card. If a step fails, the ribbon also surfaces "Retry run", "Switch meta-skill", and "Show error detail" actions inline. The ribbon survives disconnects: when the browser reconnects, the gateway replays the announce → state → completed events so the ribbon rebuilds to the latest state. ## Reading the Result A strong MetaSkill result should explain: - what it produced; - what facts or sources it used; - what is inferred or assumed; - what risks remain; - what the next action is; - what could not be verified; - whether any artifact or proposal was actually created. Be cautious if the output: - claims current facts without sources; - claims a file was created but no artifact exists; - hides tool failures as success; - gives generic advice instead of the requested deliverable; - ignores "do not create", "do not send", "do not publish", or "do not install". ## Correcting a Bad Run If the wrong MetaSkill triggered: ```text Stop using the previous MetaSkill. Treat my earlier text as context only. Now use meta-skill `` for this goal: ... ``` If no MetaSkill triggered: ```text Please rerun and explicitly use meta-skill ``. ``` If the output is too generic: ```text Redo this as a decision-ready deliverable with evidence, assumptions, risks, and next actions. ``` If creator starts creating but you do not want creation: ```text Do not create, assemble, preview, or persist any meta-skill proposal. Only analyze. ``` ## Building Your Own MetaSkill A task is a good MetaSkill candidate when: - you repeatedly perform the same high-value task; - each run has multiple steps; - inputs are similar but details vary; - the output format is relatively stable; - review, audit, replay, or confirmation matters; - ordinary prompts require you to restate too many rules every time. Poor candidates include one-line fact queries, single tool calls, casual conversation, brainstorming without stable output criteria, and high-risk automated action without human confirmation. For the authoring protocol, read [`../authoring/meta-skills.md`](../authoring/meta-skills.md). --- [Docs index](../README.md) · [Product guide](../../README.product.md) · [Improve this page](../contributing-docs.md) · [Report a docs issue](https://github.com/opensquilla/opensquilla/issues/new?template=docs_report.yml)