diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e03544b..9a56909 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -413,7 +413,7 @@ Registry skills are shipped inside the `skillware` wheel. Per-skill layout uses ### 6. `docs/skills//.md` (catalog page) - Human-readable documentation linked from the [Skill Library](docs/skills/README.md) and the category hub `docs/skills//README.md`. -- Include **ID**, **Issuer**, **Version** (from `manifest.yaml`), and **Recommended install** (`pip install "skillware[_]"` — see [install_extras.md](install_extras.md)) near the top. +- Include **ID**, **Issuer**, the Manifest v2 metadata block (**Version**, **Tier**, **Shape**, **Target**, **Tags** inside ` ... `), and **Recommended install** (`pip install "skillware[_]"` — see [install_extras.md](install_extras.md)) near the top. - Include the **intent** block (``) with **Solves**, **Works with**, and **Runtime** lines so search and GitHub can match operator queries. Keep wording accurate; do not stuff keywords. - Describe capabilities, prerequisites, arguments, and limitations. - If the skill calls external services, list its environment variables in a short table and link to [API keys for skills](docs/usage/api_keys.md). Do not duplicate the full setup guide on the skill page. @@ -425,7 +425,7 @@ Do **not** add `skills//README.md` inside the runtime registry. Catego ### 7. Registry index row -- Add or update the skill table in `docs/skills//README.md` **and** [docs/skills/README.md](docs/skills/README.md) (Skill, ID, Version, Issuer, Description). Set **Version** to `` `x.y.z` (DD Mon YYYY) `` from the manifest and the release/merge date. +- Add or update the skill table in `docs/skills//README.md` (Skill, ID, Version, Issuer, Description) **and** [docs/skills/README.md](docs/skills/README.md) (Skill, ID, Shape, Version, Issuer, Description). Set **Version** to `` `x.y.z` (DD Mon YYYY) `` from the manifest and the release/merge date. - Add the catalog page and hub to [docs/sitemap.md](docs/sitemap.md). - New top-level category: also add a row to the root README category table and a hub at `docs/skills//README.md`. diff --git a/docs/contributing/ai_native_workflow.md b/docs/contributing/ai_native_workflow.md index 648b855..f1c3462 100644 --- a/docs/contributing/ai_native_workflow.md +++ b/docs/contributing/ai_native_workflow.md @@ -247,7 +247,7 @@ These align with [CONTRIBUTING.md](../../CONTRIBUTING.md). Violations block merg - `issuer.name` and `issuer.email` required; `github` and optional `org` per [Issuer org](../../CONTRIBUTING.md#issuer-org); no template placeholders in registry paths - `card.json` issuer must match manifest `name` and `email` when present - Output-card `ui_schema.fields[].key` values must resolve in `execute()` JSON; keep `tests/fixtures/card_ui_schema/__.json` in sync (#199) -- Update `docs/skills//.md`, `docs/skills//README.md`, `docs/skills/README.md`, and `docs/sitemap.md` (**Version**, **Skill history**, intent block, and index columns per [CONTRIBUTING.md § catalog page](../../CONTRIBUTING.md#6-docsskillscategoryskill_namemd-catalog-page)) +- Update `docs/skills//.md`, `docs/skills//README.md`, `docs/skills/README.md`, and `docs/sitemap.md` (Manifest v2 metadata block with **Version**, **Tier**, **Shape**, **Target**, **Tags**, **Skill history**, intent block, and index columns per [CONTRIBUTING.md § catalog page](../../CONTRIBUTING.md#6-docsskillscategoryskill_namemd-catalog-page)) - **Skill history audit:** The **Skill history** table on every catalog page must contain exact commit hashes, dates, release versions, and real contributor attribution. Never commit template placeholders or omit historical versions. Do not push piecemeal commit-link chores after every individual PR merge; maintainers sweep and reconcile squash-merge commit SHAs against `main` line-by-line as part of release bump chores when cutting a framework release. Verify history manually against `git log --oneline -- ` and `CHANGELOG.md`; never use automated batch scripts for documentation curation. - On each catalog page, add a **Usage Examples** section (Gemini, Claude, OpenAI, DeepSeek, Ollama prompt mode) per [skill usage template](../usage/skill_usage_template.md). Keep provider mechanics in `docs/usage/`; put skill-specific paths, sample user messages, and `execute` payloads on the skill page. - Categories: `compliance`, `creative`, `data_engineering`, `defi`, `dev_tools`, `finance`, `linguistics`, `monitoring`, `office`, `optimization`, `security`, `wellness` — see [Skill library](../skills/README.md) for the live registry; [Choosing a category](../../CONTRIBUTING.md#choosing-a-category) in CONTRIBUTING.md (issue first for new top-level folders) @@ -293,7 +293,7 @@ Complete the checklist that matches your issue during Stage 5. - [ ] `card.json` (Presentation): `issuer` matches manifest; output-card `ui_schema.fields[].key` paths resolve in `tests/fixtures/card_ui_schema/__.json` (update fixture when `execute()` output changes) - [ ] `test_skill.py` (Assurance) passes — `pytest skills///test_skill.py` or `skillware test /` - [ ] Bundle tests mock all network calls and model downloads; CI does not download models. -- [ ] `docs/skills//.md`, category hub row, catalog row in `docs/skills/README.md`, and `docs/sitemap.md` (**Version** from manifest, **Skill history** with linked GitHub usernames, intent block, **Recommended install:** `pip install "skillware[_]"` per [install_extras.md](../usage/install_extras.md)) +- [ ] `docs/skills//.md`, category hub row (with `Version`), catalog row in `docs/skills/README.md` (with `Shape` and `Version`), and `docs/sitemap.md` (Manifest v2 metadata block with `Version`, `Tier`, `Shape`, `Target`, `Tags`, **Skill history** with linked GitHub usernames, intent block, **Recommended install:** `pip install "skillware[_]"` per [install_extras.md](../usage/install_extras.md)) - [ ] After changing `manifest.yaml` `requirements`, run `python scripts/sync_extras.py` and confirm `python scripts/sync_extras.py --check` passes - [ ] **Usage Examples** on the catalog page (all five providers per [skill usage template](../usage/skill_usage_template.md)); link to `docs/usage/` and list skill `env_vars` without duplicating [api_keys.md](../usage/api_keys.md) - [ ] `pytest tests/test_skill_issuer.py` passes diff --git a/docs/skills/README.md b/docs/skills/README.md index 6809062..f387f3f 100644 --- a/docs/skills/README.md +++ b/docs/skills/README.md @@ -2,60 +2,40 @@ Welcome to the official catalog of Skillware capabilities. New here? Start with the [project README](../../README.md). Each skill page describes its bundle layout; shared role vocabulary is in [Skill anatomy](../introduction.md#skill-anatomy) and the [glossary](../glossary.md). -Browse by category below, or run `skillware list` after `pip install skillware` to see locally available skills. When contributing a new skill, see [Choosing a category](../../CONTRIBUTING.md#choosing-a-category) in CONTRIBUTING.md. +Browse by category below, or run `skillware list` (with optional `--shape`, `--tag`, `--target`, or `--category` filters) after `pip install skillware` to discover locally available skills. Learn more about runtime taxonomy filtering in [Agent loops](../usage/agent_loops.md#taxonomy-aware-skill-filtering-and-execution-safety) and discovery in the [CLI guide](../usage/cli.md#skillware-list). When contributing a new skill, see [Authoring manifests](../contributing/ai_native_workflow.md#authoring-manifests-and-schema) and [Choosing a category](../../CONTRIBUTING.md#choosing-a-category) in CONTRIBUTING.md. Each category has a dedicated hub at `docs/skills//README.md`. Skill catalog pages live beside that hub (`docs/skills//.md`). Runtime IDs stay in registry form under `skills/` — the folder layout used by `SkillLoader` is unchanged. Full crawl map: [documentation sitemap](../sitemap.md). -## Universal Skill Taxonomy (Manifest v2) - -Every skill in the library adheres to the Manifest v2 taxonomy to provide deterministic discovery, runtime filtering, and safety-gated execution: - -* **Shape (Execution Geometry):** - * `atomic`: Single-step tool execution returning a deterministic output. - * `workflow`: Multi-step interactive flow with distinct internal stages (e.g. preview, verification, confirmation gates). - * `middleware`: Interceptor that inspects, sanitizes, or gates inputs/outputs before reaching models or tools. - * `stream`: Streaming event processor handling continuous or chunked metrics and sensor telemetry feeds. -* **Tier (Deployment Model):** - * `core`: Open-source, local offline compute with zero external paid cloud API dependencies. All bundled repository skills are `tier: core`. - * `cloud`: Uses remote cloud API endpoints or hosted models. - * `enterprise`: Requires enterprise infrastructure, specialized credentials, or KMS. -* **Target (Execution Substrate):** - * `software`: Standard software environments. - * `hardware`: Physical actuators, robotics, IoT fleets, or sensor buses (gated by `allow_hardware_execution` in `SkillContext`). - * `bioware`: Biosensors, neural telemetry, or brain-computer interfaces. -* **Tags (Domain Keywords):** - * Curated domain and protocol keywords (2 to 10 unique lowercase keywords matching `^[a-z0-9_-]+$`). Filtering available via `skillware list --tag `. - ## Office Skills for document processing, email automation, and productivity. **Category hub:** [Office agent skills](office/README.md). -| Skill | ID | Version | Issuer | Description | -| :--- | :--- | :--- | :--- | :--- | -| **[PDF Form Filler](office/pdf_form_filler.md)** | `office/pdf_form_filler` | `0.1.2` (16 Oct 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Inspects, validates, and fills AcroForm PDFs deterministically with XFA and radio group safeguards. | -| **[Gmail Handler](office/gmail_handler.md)** | `office/gmail_handler` | `0.2.0` (19 Aug 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Gmail send, search, read, reply, and attachments via IMAP/SMTP with address book, signatures, and confirmation gates. | -| **[Web Form Mapper](office/web_form_mapper.md)** | `office/web_form_mapper` | `0.1.0` (04 Oct 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Deterministically maps identity profiles to HTML web forms and submits with CSRF preservation and confirmation gates. | +| Skill | ID | Shape | Version | Issuer | Description | +| :--- | :--- | :--- | :--- | :--- | :--- | +| **[PDF Form Filler](office/pdf_form_filler.md)** | `office/pdf_form_filler` | `workflow` | `0.1.2` (16 Oct 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Inspects, validates, and fills AcroForm PDFs deterministically with XFA and radio group safeguards. | +| **[Gmail Handler](office/gmail_handler.md)** | `office/gmail_handler` | `workflow` | `0.2.0` (19 Aug 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Gmail send, search, read, reply, and attachments via IMAP/SMTP with address book, signatures, and confirmation gates. | +| **[Web Form Mapper](office/web_form_mapper.md)** | `office/web_form_mapper` | `workflow` | `0.1.0` (04 Oct 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Deterministically maps identity profiles to HTML web forms and submits with CSRF preservation and confirmation gates. | ## Creative Skills for image processing, media editing, and creative utilities. **Category hub:** [Creative agent skills](creative/README.md). -| Skill | ID | Version | Issuer | Description | -| :--- | :--- | :--- | :--- | :--- | -| **[Background Remover](creative/bg_remover.md)** | `creative/bg_remover` | `0.2.0` (2 Aug 2026) | [@AyushSrivastava1818](https://github.com/AyushSrivastava1818) ([@ARPAHLS](https://github.com/ARPAHLS)) | Removes image backgrounds locally using rembg and returns transparent PNGs. | -| **[Deck Builder](creative/deck_builder.md)** | `creative/deck_builder` | `0.2.0` (16 Sep 2026) | [@tusharjamunkar](https://github.com/tusharjamunkar) ([@ARPAHLS](https://github.com/ARPAHLS)) | Offline PPTX assembly from JSON deck specs — placeholders, lint_deck, suggest_outline, and 13 layouts. | +| Skill | ID | Shape | Version | Issuer | Description | +| :--- | :--- | :--- | :--- | :--- | :--- | +| **[Background Remover](creative/bg_remover.md)** | `creative/bg_remover` | `atomic` | `0.2.0` (2 Aug 2026) | [@AyushSrivastava1818](https://github.com/AyushSrivastava1818) ([@ARPAHLS](https://github.com/ARPAHLS)) | Removes image backgrounds locally using rembg and returns transparent PNGs. | +| **[Deck Builder](creative/deck_builder.md)** | `creative/deck_builder` | `workflow` | `0.2.0` (16 Sep 2026) | [@tusharjamunkar](https://github.com/tusharjamunkar) ([@ARPAHLS](https://github.com/ARPAHLS)) | Offline PPTX assembly from JSON deck specs — placeholders, lint_deck, suggest_outline, and 13 layouts. | ## Finance Tools for financial analysis, blockchain interaction, and regulatory compliance. **Category hub:** [Finance agent skills](finance/README.md). -| Skill | ID | Version | Issuer | Description | -| :--- | :--- | :--- | :--- | :--- | -| **[Wallet Screening](finance/wallet_screening.md)** | `finance/wallet_screening` | `1.1.0` (17 Oct 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Comprehensive risk assessment for Ethereum wallets. Checks sanctions lists (OFAC, FBI) and identifies interactions with malicious contracts (Mixers, Scams). | -| **[UK Companies House Handler](finance/uk_companies_house_handler.md)** | `finance/uk_companies_house_handler` | `1.4.0` (15 Oct 2026) | [@Areen-09](https://github.com/Areen-09) ([@ARPAHLS](https://github.com/ARPAHLS)) | Deterministic UK Companies House API handler: company search, officers with deterministic role/name filtering, PSC, filing history with helpers, Document API discover/pick/download, and turn-by-turn pipeline orchestration. | +| Skill | ID | Shape | Version | Issuer | Description | +| :--- | :--- | :--- | :--- | :--- | :--- | +| **[Wallet Screening](finance/wallet_screening.md)** | `finance/wallet_screening` | `workflow` | `1.1.0` (17 Oct 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Comprehensive risk assessment for Ethereum wallets. Checks sanctions lists (OFAC, FBI) and identifies interactions with malicious contracts (Mixers, Scams). | +| **[UK Companies House Handler](finance/uk_companies_house_handler.md)** | `finance/uk_companies_house_handler` | `workflow` | `1.4.0` (15 Oct 2026) | [@Areen-09](https://github.com/Areen-09) ([@ARPAHLS](https://github.com/ARPAHLS)) | Deterministic UK Companies House API handler: company search, officers with deterministic role/name filtering, PSC, filing history with helpers, Document API discover/pick/download, and turn-by-turn pipeline orchestration. | ## DeFi On-chain execution and trading for dedicated agent wallets (structured intent, previews, confirmations). @@ -64,92 +44,92 @@ On-chain execution and trading for dedicated agent wallets (structured intent, p **Operator setup (all defi skills):** Configure shared EVM chains and RPC once — [`skillware evm init`](../usage/cli.md#skillware-evm), RPC URLs in `.env`. Guide: [EVM operator config](../usage/evm_operator_config.md). -| Skill | ID | Version | Issuer | Description | -| :--- | :--- | :--- | :--- | :--- | -| **[EVM Chain Reader](defi/evm_reader.md)** | `defi/evm_reader` | `0.1.0` (29 Sep 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Read-only EVM state plane — token balances, allowances, view calls, multicall batches, and addressbook resolution. | -| **[EVM Transaction Handler](defi/evm_tx_handler.md)** | `defi/evm_tx_handler` | `0.3.0` | [@Hendobox](https://github.com/Hendobox) ([@ARPAHLS](https://github.com/ARPAHLS)) | Uni V2 quote, preview, execute, and name-based transfer on Ethereum/Base via central address book. | -| **[Token Security Scanner](defi/token_security_scanner.md)** | `defi/token_security_scanner` | `0.2.0` | [@Hendobox](https://github.com/Hendobox) ([@ARPAHLS](https://github.com/ARPAHLS)) | Read-only GoPlus token honeypot/tax/ownership report before agent trades. | +| Skill | ID | Shape | Version | Issuer | Description | +| :--- | :--- | :--- | :--- | :--- | :--- | +| **[EVM Chain Reader](defi/evm_reader.md)** | `defi/evm_reader` | `atomic` | `0.1.0` (29 Sep 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Read-only EVM state plane — token balances, allowances, view calls, multicall batches, and addressbook resolution. | +| **[EVM Transaction Handler](defi/evm_tx_handler.md)** | `defi/evm_tx_handler` | `workflow` | `0.3.0` | [@Hendobox](https://github.com/Hendobox) ([@ARPAHLS](https://github.com/ARPAHLS)) | Uni V2 quote, preview, execute, and name-based transfer on Ethereum/Base via central address book. | +| **[Token Security Scanner](defi/token_security_scanner.md)** | `defi/token_security_scanner` | `atomic` | `0.2.0` | [@Hendobox](https://github.com/Hendobox) ([@ARPAHLS](https://github.com/ARPAHLS)) | Read-only GoPlus token honeypot/tax/ownership report before agent trades. | ## Optimization Middleware skills that operate on text or state to increase performance, security, or efficiency. **Category hub:** [Optimization agent skills](optimization/README.md). -| Skill | ID | Version | Issuer | Description | -| :--- | :--- | :--- | :--- | :--- | -| **[Prompt Token Rewriter](optimization/prompt_rewriter.md)** | `optimization/prompt_rewriter` | `0.1.0` (16 Jul 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Aggressively compresses massive prompts or context histories while retaining semantic meaning to save tokens. | -| **[Context Window Optimizer](optimization/context_optimizer.md)** | `optimization/context_optimizer` | `0.1.0` (16 Sep 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Query-aware extractive selection — local embeddings score document chunks against agent_goal and return only relevant spans. | +| Skill | ID | Shape | Version | Issuer | Description | +| :--- | :--- | :--- | :--- | :--- | :--- | +| **[Prompt Token Rewriter](optimization/prompt_rewriter.md)** | `optimization/prompt_rewriter` | `middleware` | `0.1.0` (16 Jul 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Aggressively compresses massive prompts or context histories while retaining semantic meaning to save tokens. | +| **[Context Window Optimizer](optimization/context_optimizer.md)** | `optimization/context_optimizer` | `middleware` | `0.1.0` (16 Sep 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Query-aware extractive selection — local embeddings score document chunks against agent_goal and return only relevant spans. | ## Data Engineering Skills tailored for generating, parsing, and orchestrating large datasets for machine learning or analytics workflows. **Category hub:** [Data Engineering agent skills](data_engineering/README.md). -| Skill | ID | Version | Issuer | Description | -| :--- | :--- | :--- | :--- | :--- | -| **[Synthetic Data Generator](data_engineering/synthetic_generator.md)** | `data_engineering/synthetic_generator` | `0.1.1` (9 Sep 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Generates high-entropy structured synthetic data for model fine-tuning to avoid mode collapse. | -| **[Novelty Extractor](data_engineering/novelty_extractor.md)** | `data_engineering/novelty_extractor` | `0.1.0` (16 Jul 2026) | [@rizzoMartin](https://github.com/rizzoMartin) ([@ARPAHLS](https://github.com/ARPAHLS)) | Filters a text dataset by semantic novelty, retaining only chunks that carry new information above a configurable threshold. | -| **[Semantic Web Proxy](data_engineering/semantic_web_proxy.md)** | `data_engineering/semantic_web_proxy` | `0.1.0` (5 Sep 2026) | [@rizzoMartin](https://github.com/rizzoMartin) ([@ARPAHLS](https://github.com/ARPAHLS)) | Converts a live web page or raw HTML into token-efficient Markdown, text, or JSON, stripping boilerplate behind an SSRF guard and reporting estimated token savings. | -| **[Telemetry Normalizer](data_engineering/telemetry_normalizer.md)** | `data_engineering/telemetry_normalizer` | `0.1.0` (12 Oct 2026) | [@rin-katsuragi](https://github.com/rin-katsuragi) ([@ARPAHLS](https://github.com/ARPAHLS)) | Normalizes raw sensor telemetry into canonical SI units and W3C SOSA/SSN observations. | +| Skill | ID | Shape | Version | Issuer | Description | +| :--- | :--- | :--- | :--- | :--- | :--- | +| **[Synthetic Data Generator](data_engineering/synthetic_generator.md)** | `data_engineering/synthetic_generator` | `atomic` | `0.1.1` (9 Sep 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Generates high-entropy structured synthetic data for model fine-tuning to avoid mode collapse. | +| **[Novelty Extractor](data_engineering/novelty_extractor.md)** | `data_engineering/novelty_extractor` | `atomic` | `0.1.0` (16 Jul 2026) | [@rizzoMartin](https://github.com/rizzoMartin) ([@ARPAHLS](https://github.com/ARPAHLS)) | Filters a text dataset by semantic novelty, retaining only chunks that carry new information above a configurable threshold. | +| **[Semantic Web Proxy](data_engineering/semantic_web_proxy.md)** | `data_engineering/semantic_web_proxy` | `atomic` | `0.1.0` (5 Sep 2026) | [@rizzoMartin](https://github.com/rizzoMartin) ([@ARPAHLS](https://github.com/ARPAHLS)) | Converts a live web page or raw HTML into token-efficient Markdown, text, or JSON, stripping boilerplate behind an SSRF guard and reporting estimated token savings. | +| **[Telemetry Normalizer](data_engineering/telemetry_normalizer.md)** | `data_engineering/telemetry_normalizer` | `stream` | `0.1.0` (12 Oct 2026) | [@rin-katsuragi](https://github.com/rin-katsuragi) ([@ARPAHLS](https://github.com/ARPAHLS)) | Normalizes raw sensor telemetry into canonical SI units and W3C SOSA/SSN observations. | ## Compliance Enforces privacy, guardrails, and secure handling of sensitive data before it reaches external endpoints. **Category hub:** [Compliance agent skills](compliance/README.md). -| Skill | ID | Version | Issuer | Description | -| :--- | :--- | :--- | :--- | :--- | -| **[PII Masker](compliance/pii_masker.md)** | `compliance/pii_masker` | `0.1.0` (20 Jul 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | High-precision, local PII (Personally Identifiable Information) detection and redaction using the micro-f1-mask model. | -| **[MiCA Module](compliance/mica_module.md)** | `compliance/mica_module` | `0.1.2` (5 Oct 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Self-contained local Policy Enforcement and RAG engine strictly adhering to MiCA crypto-asset regulation. | -| **[Terms of Service Evaluator](compliance/tos_evaluator.md)** | `compliance/tos_evaluator` | `0.1.1` (9 Sep 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Local-first evaluation of robots.txt and website legal pages to decide whether an intended automated action appears permissible. | +| Skill | ID | Shape | Version | Issuer | Description | +| :--- | :--- | :--- | :--- | :--- | :--- | +| **[PII Masker](compliance/pii_masker.md)** | `compliance/pii_masker` | `middleware` | `0.1.0` (20 Jul 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | High-precision, local PII (Personally Identifiable Information) detection and redaction using the micro-f1-mask model. | +| **[MiCA Module](compliance/mica_module.md)** | `compliance/mica_module` | `atomic` | `0.1.2` (5 Oct 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Self-contained local Policy Enforcement and RAG engine strictly adhering to MiCA crypto-asset regulation. | +| **[Terms of Service Evaluator](compliance/tos_evaluator.md)** | `compliance/tos_evaluator` | `atomic` | `0.1.1` (9 Sep 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Local-first evaluation of robots.txt and website legal pages to decide whether an intended automated action appears permissible. | ## Security Offline and local-first defenses for untrusted input before it reaches model context or host agents. **Category hub:** [Security agent skills](security/README.md). -| Skill | ID | Version | Issuer | Description | -| :--- | :--- | :--- | :--- | :--- | -| **[Prompt Injection Firewall](security/prompt_injection_firewall.md)** | `security/prompt_injection_firewall` | `0.2.0` (21 Sep 2026) | [@mrmasa88](https://github.com/mrmasa88) ([@ARPAHLS](https://github.com/ARPAHLS)) | Offline deterministic scan and sanitization for hostile instructions in untrusted text before LLM context. | -| **[Deceptive UI Guard](security/deceptive_ui_guard.md)** | `security/deceptive_ui_guard` | `0.2.0` (3 Sep 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Deterministic HTML surface scan with zone weighting, allowlists, optional render diff, trust scoring, and pre-click agent guidance (#314). | -| **[Deepfake Guard](security/deepfake_guard.md)** | `security/deepfake_guard` | `0.1.0` (6 Oct 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Offline media and KYC document authenticity guard: ICAO 9303 MRZ validation, C2PA provenance, ELA, noise residual variance, and moiré screen recapture detection (#48). | +| Skill | ID | Shape | Version | Issuer | Description | +| :--- | :--- | :--- | :--- | :--- | :--- | +| **[Prompt Injection Firewall](security/prompt_injection_firewall.md)** | `security/prompt_injection_firewall` | `middleware` | `0.2.0` (21 Sep 2026) | [@mrmasa88](https://github.com/mrmasa88) ([@ARPAHLS](https://github.com/ARPAHLS)) | Offline deterministic scan and sanitization for hostile instructions in untrusted text before LLM context. | +| **[Deceptive UI Guard](security/deceptive_ui_guard.md)** | `security/deceptive_ui_guard` | `middleware` | `0.2.0` (3 Sep 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Deterministic HTML surface scan with zone weighting, allowlists, optional render diff, trust scoring, and pre-click agent guidance (#314). | +| **[Deepfake Guard](security/deepfake_guard.md)** | `security/deepfake_guard` | `middleware` | `0.1.0` (6 Oct 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Offline media and KYC document authenticity guard: ICAO 9303 MRZ validation, C2PA provenance, ELA, noise residual variance, and moiré screen recapture detection (#48). | ## Dev Tools Skills that assist developers in understanding codebases, planning changes, and resolving issues across any repository. **Category hub:** [Dev Tools agent skills](dev_tools/README.md). -| Skill | ID | Version | Issuer | Description | -| :--- | :--- | :--- | :--- | :--- | -| **[Issue Resolver](dev_tools/issue_resolver.md)** | `dev_tools/issue_resolver` | `0.3.0` (3 Aug 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | GitHub issue URL prep, optional caller-fetched repository profiles, nine-stage agent workflow, conditional verify/commit gates, and commit-message validation. | +| Skill | ID | Shape | Version | Issuer | Description | +| :--- | :--- | :--- | :--- | :--- | :--- | +| **[Issue Resolver](dev_tools/issue_resolver.md)** | `dev_tools/issue_resolver` | `workflow` | `0.3.0` (3 Aug 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | GitHub issue URL prep, optional caller-fetched repository profiles, nine-stage agent workflow, conditional verify/commit gates, and commit-message validation. | ## Monitoring Observability and guardrails for long-running autonomous agent loops. **Category hub:** [Monitoring agent skills](monitoring/README.md). -| Skill | ID | Version | Issuer | Description | -| :--- | :--- | :--- | :--- | :--- | -| **[Token Limiter](monitoring/token_limiter.md)** | `monitoring/token_limiter` | `1.0.0` (16 Jul 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Deterministic token budget gate that returns CONTINUE, WARN, or FORCE_TERMINATE for host loops. | -| **[KPI Gate](monitoring/kpi_gate.md)** | `monitoring/kpi_gate` | `0.1.0` (29 Aug 2026) | [@mrmasa88](https://github.com/mrmasa88) ([AO](https://github.com/0x-AO-Protocol)) | Deterministic business-KPI gate evaluating a metrics snapshot against a policy charter with fail-closed findings (issue #317). | +| Skill | ID | Shape | Version | Issuer | Description | +| :--- | :--- | :--- | :--- | :--- | :--- | +| **[Token Limiter](monitoring/token_limiter.md)** | `monitoring/token_limiter` | `middleware` | `1.0.0` (16 Jul 2026) | [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) | Deterministic token budget gate that returns CONTINUE, WARN, or FORCE_TERMINATE for host loops. | +| **[KPI Gate](monitoring/kpi_gate.md)** | `monitoring/kpi_gate` | `middleware` | `0.1.0` (29 Aug 2026) | [@mrmasa88](https://github.com/mrmasa88) ([AO](https://github.com/0x-AO-Protocol)) | Deterministic business-KPI gate evaluating a metrics snapshot against a policy charter with fail-closed findings (issue #317). | ## Wellness Supportive coaching guardrails, crisis triage, and grounded psychoeducation for host agents. **Category hub:** [Wellness agent skills](wellness/README.md). -| Skill | ID | Version | Issuer | Description | -| :--- | :--- | :--- | :--- | :--- | -| **[Mental Coach](wellness/mental_coach.md)** | `wellness/mental_coach` | `0.1.1` (9 Sep 2026) | [@mrmasa88](https://github.com/mrmasa88) ([AO](https://github.com/0x-AO-Protocol)) | Deterministic wellness coaching firewall with crisis triage, scope limits, and cited KB retrieval. | +| Skill | ID | Shape | Version | Issuer | Description | +| :--- | :--- | :--- | :--- | :--- | :--- | +| **[Mental Coach](wellness/mental_coach.md)** | `wellness/mental_coach` | `atomic` | `0.1.1` (9 Sep 2026) | [@mrmasa88](https://github.com/mrmasa88) ([AO](https://github.com/0x-AO-Protocol)) | Deterministic wellness coaching firewall with crisis triage, scope limits, and cited KB retrieval. | ## Linguistics Language adapters: curated lexicons so host agents can interpret and produce informal, internet-native language that foundation models routinely miss. **Category hub:** [Linguistics agent skills](linguistics/README.md). -| Skill | ID | Version | Issuer | Description | -| :--- | :--- | :--- | :--- | :--- | -| **[Korean Slang](linguistics/korean_slang.md)** | `linguistics/korean_slang` | `0.1.0` (19 Sep 2026) | [@bd-c3](https://github.com/bd-c3) ([@ARPAHLS](https://github.com/ARPAHLS)) | Offline Korean Gen-Z slang interpreter and peer-register generator (September 2026 pack). | +| Skill | ID | Shape | Version | Issuer | Description | +| :--- | :--- | :--- | :--- | :--- | :--- | +| **[Korean Slang](linguistics/korean_slang.md)** | `linguistics/korean_slang` | `atomic` | `0.1.0` (19 Sep 2026) | [@bd-c3](https://github.com/bd-c3) ([@ARPAHLS](https://github.com/ARPAHLS)) | Offline Korean Gen-Z slang interpreter and peer-register generator (September 2026 pack). | --- @@ -168,4 +148,4 @@ skill = bundle["class"]() --- -See [Usage guides](../usage/README.md) for provider adapters, [Agent loops](../usage/agent_loops.md) for the shared execute pattern, and [Testing](../TESTING.md) for running skill tests before opening a PR. +See [Usage guides](../usage/README.md) for provider adapters, [Agent loops](../usage/agent_loops.md) for the shared execute pattern and [taxonomy-aware filtering](../usage/agent_loops.md#taxonomy-aware-skill-filtering-and-execution-safety), [CLI documentation](../usage/cli.md#skillware-list) for filtering by taxonomy flags (`--shape`, `--tag`, `--target`, `--category`) and inspecting the taxonomy badge panel with `skillware info`, [Authoring manifests](../contributing/ai_native_workflow.md#authoring-manifests-and-schema) for Manifest v2 specifications, and [Testing](../TESTING.md) for running skill tests before opening a PR. diff --git a/docs/skills/compliance/mica_module.md b/docs/skills/compliance/mica_module.md index 58f2a12..0244ee8 100644 --- a/docs/skills/compliance/mica_module.md +++ b/docs/skills/compliance/mica_module.md @@ -4,6 +4,10 @@ **Issuer**: [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) **Version**: `0.1.2` — 5 Oct 2026 +**Tier**: `core` +**Shape**: `atomic` +**Target**: `software` +**Tags**: `mica`, `crypto`, `compliance`, `regulation`, `eu` **Solves:** Local MiCA policy enforcement and RAG over a bundled crypto-asset regulation corpus. diff --git a/docs/skills/compliance/pii_masker.md b/docs/skills/compliance/pii_masker.md index 46149eb..c3ccf11 100644 --- a/docs/skills/compliance/pii_masker.md +++ b/docs/skills/compliance/pii_masker.md @@ -4,6 +4,10 @@ **Issuer**: [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) **Version**: `0.1.0` — 20 Jul 2026 +**Tier**: `core` +**Shape**: `middleware` +**Target**: `software` +**Tags**: `pii`, `privacy`, `masking`, `gdpr`, `redaction` **Solves:** Detect and redact personally identifiable information locally before text reaches an external model. diff --git a/docs/skills/compliance/tos_evaluator.md b/docs/skills/compliance/tos_evaluator.md index 7f043b0..49e343f 100644 --- a/docs/skills/compliance/tos_evaluator.md +++ b/docs/skills/compliance/tos_evaluator.md @@ -5,6 +5,10 @@ **Issuer:** [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) **Version**: `0.1.1` — 9 Sep 2026 +**Tier**: `core` +**Shape**: `atomic` +**Target**: `software` +**Tags**: `tos`, `legal`, `compliance`, `contracts`, `scraping`, `robots_txt` **Solves:** Decide whether an intended automated web action appears permitted by robots.txt and site legal pages. diff --git a/docs/skills/creative/bg_remover.md b/docs/skills/creative/bg_remover.md index 9d27418..9914644 100644 --- a/docs/skills/creative/bg_remover.md +++ b/docs/skills/creative/bg_remover.md @@ -4,6 +4,10 @@ **Issuer**: [@AyushSrivastava1818](https://github.com/AyushSrivastava1818) ([@ARPAHLS](https://github.com/ARPAHLS)) **Version**: `0.2.0` — 2 Aug 2026 +**Tier**: `core` +**Shape**: `atomic` +**Target**: `software` +**Tags**: `image`, `segmentation`, `background_removal`, `vision` **Solves:** Remove image backgrounds locally and return transparent PNGs for creative and deck pipelines. diff --git a/docs/skills/creative/deck_builder.md b/docs/skills/creative/deck_builder.md index ec6ab4c..612da50 100644 --- a/docs/skills/creative/deck_builder.md +++ b/docs/skills/creative/deck_builder.md @@ -4,6 +4,10 @@ **Issuer**: [@tusharjamunkar](https://github.com/tusharjamunkar) ([@ARPAHLS](https://github.com/ARPAHLS)) **Version**: `0.2.0` — 16 Sep 2026 +**Tier**: `core` +**Shape**: `workflow` +**Target**: `software` +**Tags**: `presentation`, `slides`, `pptx`, `powerpoint` **Solves:** Assemble editable PPTX decks from structured JSON specs with lint and outline helpers. diff --git a/docs/skills/data_engineering/novelty_extractor.md b/docs/skills/data_engineering/novelty_extractor.md index 5632aee..27befe4 100644 --- a/docs/skills/data_engineering/novelty_extractor.md +++ b/docs/skills/data_engineering/novelty_extractor.md @@ -5,6 +5,10 @@ **Issuer:** [@rizzoMartin](https://github.com/rizzoMartin) ([@ARPAHLS](https://github.com/ARPAHLS)) **Version**: `0.1.0` — 16 Jul 2026 +**Tier**: `core` +**Shape**: `atomic` +**Target**: `software` +**Tags**: `clustering`, `novelty`, `embeddings`, `data_mining` **Solves:** Filter text datasets by semantic novelty using local embeddings, keeping only chunks that add information. diff --git a/docs/skills/data_engineering/semantic_web_proxy.md b/docs/skills/data_engineering/semantic_web_proxy.md index 6d2dfed..25e220b 100644 --- a/docs/skills/data_engineering/semantic_web_proxy.md +++ b/docs/skills/data_engineering/semantic_web_proxy.md @@ -4,6 +4,10 @@ **Issuer**: [@rizzoMartin](https://github.com/rizzoMartin) ([@ARPAHLS](https://github.com/ARPAHLS)) **Version**: `0.1.0` +**Tier**: `core` +**Shape**: `atomic` +**Target**: `software` +**Tags**: `web`, `scraping`, `semantic`, `proxy`, `markdown` **Solves:** Convert live pages or raw HTML into token-efficient Markdown, text, or JSON behind an SSRF guard. diff --git a/docs/skills/data_engineering/synthetic_generator.md b/docs/skills/data_engineering/synthetic_generator.md index c21acbd..14ab115 100644 --- a/docs/skills/data_engineering/synthetic_generator.md +++ b/docs/skills/data_engineering/synthetic_generator.md @@ -5,6 +5,10 @@ **Issuer:** [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) **Version**: `0.1.1` — 9 Sep 2026 +**Tier**: `core` +**Shape**: `atomic` +**Target**: `software` +**Tags**: `synthetic_data`, `generation`, `testing`, `mock` **Solves:** Generate high-entropy synthetic JSONL for model fine-tuning without mode collapse. diff --git a/docs/skills/data_engineering/telemetry_normalizer.md b/docs/skills/data_engineering/telemetry_normalizer.md index 6986d3d..b45dacc 100644 --- a/docs/skills/data_engineering/telemetry_normalizer.md +++ b/docs/skills/data_engineering/telemetry_normalizer.md @@ -4,6 +4,10 @@ **Issuer**: [@rin-katsuragi](https://github.com/rin-katsuragi) ([@ARPAHLS](https://github.com/ARPAHLS)) **Version**: `0.1.0` +**Tier**: `core` +**Shape**: `stream` +**Target**: `software` +**Tags**: `telemetry`, `normalization`, `metrics`, `streaming`, `iot`, `sensors` **Solves:** Standardize noisy heterogeneous sensor telemetry from robotics, IoT, and facilities into canonical SI units and W3C SOSA/SSN semantic observations. diff --git a/docs/skills/defi/evm_reader.md b/docs/skills/defi/evm_reader.md index 3274200..8838834 100644 --- a/docs/skills/defi/evm_reader.md +++ b/docs/skills/defi/evm_reader.md @@ -4,6 +4,10 @@ **Issuer**: [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) **Version**: `0.1.0` +**Tier**: `core` +**Shape**: `atomic` +**Target**: `software` +**Tags**: `web3`, `evm`, `ethereum`, `rpc`, `blockchain` **Solves:** Read-only EVM chain queries: token metadata, balances, allowances, allowlisted contract view calls, Multicall3 batch reads, and address book contact resolution without signing. diff --git a/docs/skills/defi/evm_tx_handler.md b/docs/skills/defi/evm_tx_handler.md index 1da33cf..e455cbe 100644 --- a/docs/skills/defi/evm_tx_handler.md +++ b/docs/skills/defi/evm_tx_handler.md @@ -4,6 +4,10 @@ **Issuer**: [@Hendobox](https://github.com/Hendobox) ([@ARPAHLS](https://github.com/ARPAHLS)) **Version**: `0.3.0` +**Tier**: `core` +**Shape**: `workflow` +**Target**: `software` +**Tags**: `web3`, `evm`, `transaction`, `signing`, `wallet` **Solves:** Quote, preview, and execute Uniswap V2 swaps and transfers from structured intent on Ethereum or Base. diff --git a/docs/skills/defi/token_security_scanner.md b/docs/skills/defi/token_security_scanner.md index 7849931..5c03d61 100644 --- a/docs/skills/defi/token_security_scanner.md +++ b/docs/skills/defi/token_security_scanner.md @@ -4,6 +4,10 @@ **Issuer**: [@Hendobox](https://github.com/Hendobox) ([@ARPAHLS](https://github.com/ARPAHLS)) **Version**: `0.2.0` +**Tier**: `core` +**Shape**: `atomic` +**Target**: `software` +**Tags**: `web3`, `security`, `erc20`, `honeypot`, `token` **Solves:** Vet an ERC-20 / LP contract for honeypot, tax, ownership, and related risk before an agent trades. diff --git a/docs/skills/dev_tools/issue_resolver.md b/docs/skills/dev_tools/issue_resolver.md index 3fe09df..de742af 100644 --- a/docs/skills/dev_tools/issue_resolver.md +++ b/docs/skills/dev_tools/issue_resolver.md @@ -5,6 +5,10 @@ **Issuer:** [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) **Version**: `0.3.0` — 3 Aug 2026 +**Tier**: `core` +**Shape**: `workflow` +**Target**: `software` +**Tags**: `github`, `git`, `issue`, `debugging`, `agent` **Solves:** Turn a GitHub issue URL into a staged, gated resolution workflow with optional repository context. diff --git a/docs/skills/finance/uk_companies_house_handler.md b/docs/skills/finance/uk_companies_house_handler.md index 97cbacb..56b87e4 100644 --- a/docs/skills/finance/uk_companies_house_handler.md +++ b/docs/skills/finance/uk_companies_house_handler.md @@ -4,6 +4,10 @@ **Issuer**: [@Areen-09](https://github.com/Areen-09) ([@ARPAHLS](https://github.com/ARPAHLS)) **Version**: `1.4.0` — 15 Oct 2026 +**Tier**: `core` +**Shape**: `workflow` +**Target**: `software` +**Tags**: `kyc`, `companies_house`, `uk`, `corporate`, `filings` **Solves:** Deterministic UK Companies House search, officers, PSC, filing history, and Document API download for compliance agents. diff --git a/docs/skills/finance/wallet_screening.md b/docs/skills/finance/wallet_screening.md index 1513454..b5e1390 100644 --- a/docs/skills/finance/wallet_screening.md +++ b/docs/skills/finance/wallet_screening.md @@ -4,6 +4,10 @@ **Issuer**: [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) **Version**: `1.1.0` — 17 Oct 2026 +**Tier**: `core` +**Shape**: `workflow` +**Target**: `software` +**Tags**: `aml`, `sanctions`, `forensics`, `web3`, `compliance` **Solves:** Screen Ethereum wallets against OFAC / FBI sanctions lists and known mixer or scam contracts before a host agent acts. diff --git a/docs/skills/linguistics/korean_slang.md b/docs/skills/linguistics/korean_slang.md index 5502938..bb6865f 100644 --- a/docs/skills/linguistics/korean_slang.md +++ b/docs/skills/linguistics/korean_slang.md @@ -5,6 +5,10 @@ **Issuer:** [@bd-c3](https://github.com/bd-c3) ([@ARPAHLS](https://github.com/ARPAHLS)) **Version**: `0.1.0` — 19 Sep 2026 +**Tier**: `core` +**Shape**: `atomic` +**Target**: `software` +**Tags**: `nlp`, `slang`, `korean`, `translation`, `linguistics` **Solves:** Interpret and generate Korean Gen-Z slang and internet register that foundation models routinely miss. diff --git a/docs/skills/monitoring/kpi_gate.md b/docs/skills/monitoring/kpi_gate.md index f3c5c82..bc3eae2 100644 --- a/docs/skills/monitoring/kpi_gate.md +++ b/docs/skills/monitoring/kpi_gate.md @@ -5,6 +5,10 @@ **Issuer:** [@mrmasa88](https://github.com/mrmasa88) ([AO](https://github.com/0x-AO-Protocol)) **Version**: `0.1.0` — 29 Aug 2026 +**Tier**: `core` +**Shape**: `middleware` +**Target**: `software` +**Tags**: `kpi`, `metrics`, `evaluation`, `quality`, `gate` **Solves:** Fail-closed business-KPI evaluation of a metrics snapshot against a policy charter. diff --git a/docs/skills/monitoring/token_limiter.md b/docs/skills/monitoring/token_limiter.md index a692a5e..02e19d8 100644 --- a/docs/skills/monitoring/token_limiter.md +++ b/docs/skills/monitoring/token_limiter.md @@ -5,6 +5,10 @@ **Issuer:** [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) **Version**: `1.0.0` — 16 Jul 2026 +**Tier**: `core` +**Shape**: `middleware` +**Target**: `software` +**Tags**: `rate_limit`, `token_bucket`, `cost_control`, `quota` **Solves:** Enforce a token budget on long-running agent loops (`CONTINUE`, `WARN`, `FORCE_TERMINATE`). diff --git a/docs/skills/office/gmail_handler.md b/docs/skills/office/gmail_handler.md index 4d589d4..54540d5 100644 --- a/docs/skills/office/gmail_handler.md +++ b/docs/skills/office/gmail_handler.md @@ -4,6 +4,10 @@ **Issuer**: [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) **Version**: `0.2.0` — 19 Aug 2026 +**Tier**: `core` +**Shape**: `workflow` +**Target**: `software` +**Tags**: `email`, `gmail`, `google_workspace`, `draft` **Solves:** Send, search, read, and reply to Gmail with attachments from a dedicated agent mailbox. diff --git a/docs/skills/office/pdf_form_filler.md b/docs/skills/office/pdf_form_filler.md index e313cc3..e7ff999 100644 --- a/docs/skills/office/pdf_form_filler.md +++ b/docs/skills/office/pdf_form_filler.md @@ -4,6 +4,10 @@ **Issuer**: [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) **Version**: `0.1.2` — 16 Oct 2026 +**Tier**: `core` +**Shape**: `workflow` +**Target**: `software` +**Tags**: `pdf`, `form_filling`, `documents`, `acrobat` **Solves:** Inspect, validate, and fill AcroForm PDFs deterministically with XFA guards, radio group handling, and vector flattening. diff --git a/docs/skills/office/web_form_mapper.md b/docs/skills/office/web_form_mapper.md index 866dd3e..9e42f49 100644 --- a/docs/skills/office/web_form_mapper.md +++ b/docs/skills/office/web_form_mapper.md @@ -3,7 +3,11 @@ **ID**: `office/web_form_mapper` **Issuer**: [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) -**Version**: `0.1.0` — 04 Oct 2026 +**Version**: `0.1.0` — 04 Oct 2026 +**Tier**: `core` +**Shape**: `workflow` +**Target**: `software` +**Tags**: `forms`, `browser`, `automation`, `mapping` **Solves:** Maps operator and client entity identities onto HTML web forms with CSRF preservation and safety gates. diff --git a/docs/skills/optimization/context_optimizer.md b/docs/skills/optimization/context_optimizer.md index ebad665..f37e5fc 100644 --- a/docs/skills/optimization/context_optimizer.md +++ b/docs/skills/optimization/context_optimizer.md @@ -5,6 +5,10 @@ **Issuer:** [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) **Version**: `0.1.0` — 16 Sep 2026 +**Tier**: `core` +**Shape**: `middleware` +**Target**: `software` +**Tags**: `context`, `token_count`, `llm`, `pruning` **Solves:** Select query-relevant document spans with local embeddings so host agents stay inside the context window. diff --git a/docs/skills/optimization/prompt_rewriter.md b/docs/skills/optimization/prompt_rewriter.md index 874efab..175e4fb 100644 --- a/docs/skills/optimization/prompt_rewriter.md +++ b/docs/skills/optimization/prompt_rewriter.md @@ -5,6 +5,10 @@ **Issuer:** [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) **Version**: `0.1.0` — 16 Jul 2026 +**Tier**: `core` +**Shape**: `middleware` +**Target**: `software` +**Tags**: `prompt_engineering`, `compression`, `refinement`, `llm` **Solves:** Compress oversized prompts and conversation histories while retaining meaning so host agents spend fewer tokens. diff --git a/docs/skills/security/deceptive_ui_guard.md b/docs/skills/security/deceptive_ui_guard.md index 0a94de5..a8ecf72 100644 --- a/docs/skills/security/deceptive_ui_guard.md +++ b/docs/skills/security/deceptive_ui_guard.md @@ -5,6 +5,10 @@ **Issuer:** [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) **Version**: `0.2.0` — 3 Sep 2026 +**Tier**: `core` +**Shape**: `middleware` +**Target**: `software` +**Tags**: `ui_safety`, `phishing`, `dark_patterns`, `vision` **Solves:** Detect deceptive HTML UI patterns (hidden controls, bait, pre-click traps) before a host agent clicks. diff --git a/docs/skills/security/deepfake_guard.md b/docs/skills/security/deepfake_guard.md index 7eb69ef..d357801 100644 --- a/docs/skills/security/deepfake_guard.md +++ b/docs/skills/security/deepfake_guard.md @@ -5,6 +5,10 @@ **Issuer:** [@rosspeili](https://github.com/rosspeili) ([@ARPAHLS](https://github.com/ARPAHLS)) **Version**: `0.1.0` — 6 Oct 2026 +**Tier**: `core` +**Shape**: `middleware` +**Target**: `software` +**Tags**: `deepfake`, `audio`, `video`, `forensics`, `security` **Solves:** Deterministic offline forensic verification of media and KYC documents for AI generation, digital tampering, C2PA provenance, and ICAO 9303 MRZ forgery. diff --git a/docs/skills/security/prompt_injection_firewall.md b/docs/skills/security/prompt_injection_firewall.md index 3405bcd..4437a92 100644 --- a/docs/skills/security/prompt_injection_firewall.md +++ b/docs/skills/security/prompt_injection_firewall.md @@ -5,6 +5,10 @@ **Issuer:** [@mrmasa88](https://github.com/mrmasa88) ([@ARPAHLS](https://github.com/ARPAHLS)) · **Contact:** masa88keith@gmail.com **Version**: `0.2.0` — 21 Sep 2026 +**Tier**: `core` +**Shape**: `middleware` +**Target**: `software` +**Tags**: `security`, `prompt_injection`, `firewall`, `safety` **Solves:** Scan and sanitize untrusted text for prompt injection, encoding smuggling, and instruction-override attacks before LLM context. diff --git a/docs/skills/wellness/mental_coach.md b/docs/skills/wellness/mental_coach.md index 6954fbc..7ebec8d 100644 --- a/docs/skills/wellness/mental_coach.md +++ b/docs/skills/wellness/mental_coach.md @@ -5,6 +5,10 @@ **Issuer:** [@mrmasa88](https://github.com/mrmasa88) ([AO](https://github.com/0x-AO-Protocol)) · **Contact:** masa88keith@gmail.com **Version**: `0.1.1` — 9 Sep 2026 +**Tier**: `core` +**Shape**: `atomic` +**Target**: `software` +**Tags**: `wellness`, `coaching`, `mindfulness`, `reflection` **Solves:** Crisis triage and scoped wellness coaching guardrails so host agents do not improvise clinical advice. diff --git a/docs/usage/skill_usage_template.md b/docs/usage/skill_usage_template.md index 3e61c2c..8c932c7 100644 --- a/docs/usage/skill_usage_template.md +++ b/docs/usage/skill_usage_template.md @@ -2,7 +2,7 @@ When adding **Usage Examples** to `docs/skills//.md`, include subsections for Gemini, Claude, OpenAI, DeepSeek, and Ollama (prompt mode). Each block should be runnable: imports, `load_env_file()`, `load_skill`, `bundle["class"]()` (or explicit `bundle["module"].ClassName()`), adapter, system instructions, sample user message, and `execute` on tool call. -Add **Recommended install:** `pip install "skillware[_]"` near the top of every catalog page (use the registry ID with `/` replaced by `_`, even when the extra is empty today). Add the intent block (**Solves**, **Works with**, **Runtime**) immediately after the version metadata markers. +Add **Recommended install:** `pip install "skillware[_]"` near the top of every catalog page (use the registry ID with `/` replaced by `_`, even when the extra is empty today). Include the Manifest v2 metadata block (`Version`, `Tier`, `Shape`, `Target`, `Tags`) inside ` ... `. Add the intent block (**Solves**, **Works with**, **Runtime**) immediately after the metadata markers. For Gemini sections, ensure the dispatch matches the sanitized tool name (e.g. `SkillLoader._sanitize_gemini_tool_name(bundle["manifest"]["name"])` or adapter-derived name) rather than the raw registry ID with slashes. Do not manually wrap the tool output in `types.Tool(function_declarations=[...])`, as `to_gemini_tool()` already returns a `types.Tool` object. diff --git a/tests/test_registry_docs.py b/tests/test_registry_docs.py index 97c8659..6e1d31d 100644 --- a/tests/test_registry_docs.py +++ b/tests/test_registry_docs.py @@ -247,6 +247,10 @@ def test_catalog_pages_have_version_and_history_blocks( checks = [ ("", "version metadata begin marker"), ("**Version**:", "version header"), + ("**Tier**:", "tier header"), + ("**Shape**:", "shape header"), + ("**Target**:", "target header"), + ("**Tags**:", "tags header"), ("", "version metadata end marker"), ("", "intent begin marker"), ("**Solves:**", "intent problem line"), @@ -266,25 +270,54 @@ def test_catalog_pages_have_version_and_history_blocks( ) -def test_skill_library_index_has_version_column(): - """Skill library tables include a Version column with manifest values.""" +def test_catalog_pages_taxonomy_matches_manifests( + manifested_skills: set[str], +): + """Catalog page taxonomy metadata matches manifest.yaml values.""" + missing = [] + for skill_id in sorted(manifested_skills): + page = catalog_page_for(skill_id) + content = page.read_text(encoding="utf-8") + manifest_path = REPO_ROOT / "skills" / skill_id / "manifest.yaml" + manifest = yaml.safe_load(manifest_path.read_text(encoding="utf-8")) + rel = page.relative_to(REPO_ROOT).as_posix() + + tier_needle = f"**Tier**: `{manifest['tier']}`" + shape_needle = f"**Shape**: `{manifest['shape']}`" + if tier_needle not in content: + missing.append(f"{rel}: missing {tier_needle}") + if shape_needle not in content: + missing.append(f"{rel}: missing {shape_needle}") + + assert not missing, "Taxonomy mismatch between docs and manifests:\n" + "\n".join( + f" - {item}" for item in missing + ) + + +def test_skill_library_index_has_version_and_shape_columns(): + """Skill library tables include Shape and Version columns with manifest values.""" readme = (REPO_ROOT / "docs" / "skills" / "README.md").read_text(encoding="utf-8") - assert "| Skill | ID | Version | Issuer | Description |" in readme - assert "| :--- | :--- | :--- | :--- | :--- |" in readme + assert "| Skill | ID | Shape | Version | Issuer | Description |" in readme + assert "| :--- | :--- | :--- | :--- | :--- | :--- |" in readme missing = [] for manifest_path in (REPO_ROOT / "skills").rglob("manifest.yaml"): with open(manifest_path, encoding="utf-8") as f: manifest = yaml.safe_load(f) - if isinstance(manifest, dict) and "version" in manifest: + if isinstance(manifest, dict): skill_id = manifest_path.parent.relative_to(REPO_ROOT / "skills").as_posix() - expected = f"`{manifest['version']}`" - if expected not in readme: - missing.append(f"{skill_id}: missing {expected}") + if "version" in manifest: + expected_ver = f"`{manifest['version']}`" + if expected_ver not in readme: + missing.append(f"{skill_id}: missing version {expected_ver}") + if "shape" in manifest: + expected_shape = f"`{manifest['shape']}`" + if expected_shape not in readme: + missing.append(f"{skill_id}: missing shape {expected_shape}") assert ( not missing - ), "Missing manifest versions in docs/skills/README.md:\n" + "\n".join( + ), "Missing manifest versions or shapes in docs/skills/README.md:\n" + "\n".join( f" - {item}" for item in missing )