Skip to content

Latest commit

 

History

History
755 lines (564 loc) · 39.9 KB

cli.md

File metadata and controls

755 lines (564 loc) · 39.9 KB

CLI Reference

Skillware ships a skillware command-line tool for discovering and inspecting skills installed locally. It mirrors the same path resolution order used by SkillLoader.load_skill(), so the skills listed are exactly the ones your agent can load.

Splash

The interactive CLI opens with a gradient-styled SKILLWARE ASCII logo, a version tagline, and footer links. The block art (from skillware/cli.py):

  ███████╗██╗  ██╗██╗██╗     ██╗     ██╗    ██╗ █████╗ ██████╗ ███████╗
  ██╔════╝██║ ██╔╝██║██║     ██║     ██║    ██║██╔══██╗██╔══██╗██╔════╝
  ███████╗█████╔╝ ██║██║     ██║     ██║ █╗ ██║███████║██████╔╝█████╗
  ╚════██║██╔═██╗ ██║██║     ██║     ██║███╗██║██╔══██║██╔══██╗██╔══╝
  ███████║██║  ██╗██║███████╗███████╗╚███╔███╔╝██║  ██║██║  ██║███████╗
  ╚══════╝╚═╝  ╚═╝╚═╝╚══════╝╚══════╝ ╚══╝╚══╝ ╚═╝  ╚═╝╚═╝  ╚═╝╚══════╝

Tagline: Skillware v{version} — Skill Management Framework. Gradient colors follow the active color theme. See Interactive menu for a terminal screenshot.

Installation

Install Skillware — rich is included as a core dependency:

pip install skillware

Running the CLI

After installation, the skillware command is available directly:

skillware
skillware list
skillware doctor
skillware config show
skillware context show
skillware chain list
skillware theme ocean
skillware addressbook list
skillware evm chains list
skillware evm tokens list
skillware test
skillware examples
skillware --version

If skillware is not recognized, Python's Scripts directory may not be on your PATH.

Unix — verify with:

which skillware

Windows — verify with:

where skillware

If the command is not found, use the module fallback (works on any OS as long as Python is installed):

python -m skillware
python -m skillware list
python -m skillware test finance/wallet_screening
python -m skillware doctor optimization/prompt_rewriter
python -m skillware list --category compliance
python -m skillware --help

Windows PATH fix — add both Python3x\ and Python3x\Scripts\ to your system PATH, or use the py launcher:

py -3 -m pip install skillware
py -3 -m skillware list

Version advisory

On CLI startup, Skillware checks the installed package version once per process and warns on duplicate or orphan install metadata (editable + PyPI overlap — see #333). If you are on an unsupported release (below 0.3.5, for example 0.3.4 or 0.2.9), a single dim message is printed to stderr suggesting an upgrade to >= 0.4.7. Installs in the 0.3.5–0.4.6 band stay silent (no security backports, but no startup spam). Current supported installs (0.4.7 and above) stay silent.

Library use (import skillware, SkillLoader) never prints this message.

To disable the check in CI or automation:

export SKILLWARE_NO_VERSION_CHECK=1

See SECURITY.md for the full supported-version policy.

Interactive menu

Running skillware with no arguments launches an ASCII splash screen and an interactive numbered menu:

skillware

Earlier Skillware splash and list output; current menu options are listed below

The splash shows a gradient-styled SKILLWARE ASCII logo, a tagline in the form Skillware v{version} — Skill Management Framework (same version string as skillware --version), and dim footer links to the project site and repository. The menu accepts both number input (1) and command name (find). After each command completes, the menu re-prints automatically.

Navigation (all menu levels):

Input Action
0 Exit Skillware
b / back Return to the previous menu (submenus only)
q Same as 0 (exit)
Ctrl+C Exit from the main menu

Available commands:

Input Command Status
1 / find Search and rank skills by intent, action, or keywords Available
2 / list List all locally installed skills Available
3 / examples Browse runnable example scripts (index from examples/README.md, or from GitHub when no local copy exists) Available
4 / config Configure paths, theme, EVM, mail and shared contacts; show or open configuration Available
5 / test Run bundle tests (test_skill.py) for one or all skills Available
6 / doctor Check manifest deps and skill.py import readiness Available
7 / help Grouped help topics and doc links Available

Interactive config submenu

Choose 4 / config to open the configuration menu:

Input Action
1 / paths View, edit and diagnose skill roots and shadowing
2 / theme Choose and save pastel, ocean or mono
3 / evm Configure EVM chains, RPC endpoints and tokens
4 / mail Configure the mail address book and signature
5 / addressbook Manage shared contacts and EVM wallets
6 / show Print merged global and project YAML configuration
7 / open Open the configuration file or directory in the OS file manager

Use b / back to return to the main menu, or 0 / q to exit Skillware. Returning from a nested setup menu brings you back to config. Typing paths, theme, evm, mail or addressbook directly at the main prompt remains a shortcut to the corresponding submenu. Direct CLI commands are unchanged, including skillware config show and skillware config open.

Grouped help

skillware --help prints a compact topic index, CLI usage examples, and pointers to install/docs. For full command details per topic, run skillware and choose 7 / help, then pick a topic:

Input Topic
1 / skills list, test, doctor
2 / examples indexed runnable scripts
3 / paths resolution and paths submenu
4 / config merged YAML settings
5 / context context show — registry brief (SkillContext)
6 / chains chain list, show, validate, run, dry-run
7 / theme theme — CLI color theme picker or direct set
8 / mail address book and signature setup
9 / evm chains, tokens, and RPC config
10 / addressbook shared contacts, identity, and wallets
11 / general menu, --help, --version
12 / install pip install skillware
13 / docs link to this CLI guide
14 / interactive numbered splash menu

Brief --help topic index matches the table above. Each topic expands to the command groups below when you choose 7 / help in the interactive menu:

Group Topics
Skills list, test, doctor
Examples examples
Paths paths, interactive paths submenu
Config config show
Context context show — registry brief (SkillContext)
Chains chain list, chain show, chain validate, chain run, chain dry-run
Theme theme, interactive config -> theme, direct theme <name>
Mail mail, interactive mail submenu
EVM evm, evm init, evm chains list, evm chain add, evm tokens list, evm token add, evm rpc enable, evm validate, evm open
Addressbook addressbook list, addressbook add, addressbook edit, addressbook set-wallet, addressbook open
General interactive menu, --help, --version

Commands

skillware list

Print a table of all locally available skills.

skillware list

Sample output:

ID                           VERSION  CATEGORY    ISSUER      DESCRIPTION                                       REQUIREMENTS
compliance/pii_masker        0.1.0    compliance  rosspeili   Detects and redacts PII locally using Ollama.     requests
finance/wallet_screening     1.0.0    finance     rosspeili   Screens Ethereum wallets against OFAC sanctions.  requests
office/pdf_form_filler       0.1.2    office      rosspeili   Fills PDF forms from natural language.            pymupdf

Flags

Flag Description
--category <name> Show only skills in the given category. Discovered at runtime, never hardcoded.
--shape <shape> Filter by execution shape: atomic, workflow, middleware, or stream.
--tier <tier> Filter by deployment tier: core, cloud, or enterprise.
--target <substrate> Filter by execution substrate: software, hardware, or bioware.
--tag <keyword> Filter by domain keyword or semantic tag (e.g. aml, pdf, sanctions).
--issuer <handle> Show only skills by a given GitHub handle or issuer name.
--skills-root <path> Override the skills directory for this command only.
--examples Add an EXAMPLES column with the count of indexed scripts per skill (- when none). Works with filters.

Examples

# Filter by execution shape
skillware list --shape workflow
skillware list --shape atomic

# Filter by domain tag
skillware list --tag aml
skillware list --tag security

# Filter by execution substrate
skillware list --target hardware

# Multi-flag discovery
skillware list --category finance --shape workflow

# Filter by category
skillware list --category compliance

# Show example script counts per skill
skillware list --examples
skillware list --examples --category dev_tools

# Filter by issuer
skillware list --issuer rosspeili

# Use a custom skills directory
skillware list --skills-root /path/to/my/skills

skillware info

Inspect detailed metadata and the Taxonomy Badge Panel for any skill in the registry.

skillware info finance/wallet_screening
skillware info security/prompt_injection_firewall

Sample output:

+------------------- Skill Info: finance/wallet_screening --------------------+
| ID: finance/wallet_screening                                                |
| Version: 1.1.0                                                              |
| Category: finance                                                           |
| Issuer: rosspeili                                                           |
| Description: Screens Ethereum wallets against OFAC sanctions and mixer      |
| lists.                                                                      |
| Requirements: requests                                                      |
|                                                                             |
| Taxonomy:                                                                   |
|   Shape:  workflow (Multi-step interactive flow with preview/confirmation)  |
|   Tier:   core (Bundled open-source, local offline execution)               |
|   Target: software                                                          |
|   Tags:   aml, sanctions, forensics, web3, compliance                       |
+-----------------------------------------------------------------------------+

skillware find

Search, score, and rank registry skills by task intent, supported actions, taxonomy tags, or natural language query. Designed for both interactive human inspection and automated agent tool discovery.

skillware find "transcribe dna to rna"
skillware find "honeypot screening" --shape workflow
skillware find "send email" --ready-only
skillware find "deepfake" --json
skillware find "align" --inspect

Discovery Options

Flag Type Description
query positional Natural language query, task intent, or keywords
-n, --top int Maximum number of skills to return (default: 5)
-c, --category string Filter skills by category (e.g. bio, finance)
-r, --ready-only flag Filter to skills with all dependencies and prerequisites met
--shape enum Filter by shape (atomic, workflow, middleware, stream)
--tier enum Filter by tier (core, cloud, enterprise)
--target enum Filter by target substrate (software, hardware, bioware)
--tag string Filter by domain keyword or semantic tag
--min-confidence int Minimum confidence percentage threshold (default: 15)
--json flag Emit machine-readable JSON array with agent hints
--inspect [SKILL_ID] flag/str Deep-inspect actions, parameters, and examples for top match or given skill

Agent Discovery API

In addition to the CLI, Python agents can discover skills programmatically:

from skillware import find_skills, inspect_skill

# Find matching skills ranked by confidence
matches = find_skills("transcribe dna to rna", ready_only=True)
for match in matches:
    print(f"{match.skill_id} ({match.confidence_pct}%): {match.summary}")
    print(f"Agent hint: {match.agent_hint}")

# Inspect skill actions and parameters
info = inspect_skill("bio/sequence_ops")
print(info["actions"])

skillware examples

List runnable scripts indexed in examples/README.md (source of truth — the CLI does not scan examples/*.py directly). When no local examples/README.md is found (typical for pip install), the CLI loads the index from GitHub main.

skillware examples
skillware examples compliance/tos_evaluator
skillware examples finance/wallet_screening

Arguments

Input Description
(no args) All indexed scripts (script-first view)
<category>/<skill_name> Scripts linked to that skill ID only

Columns: Script, Skill ID(s), Provider, Required extra (pip extra name), and GITHUB — the script filename as a clickable link to main (ctrl+click; full URL not repeated in the cell). Environment variables and longer notes stay in examples/README.md; a one-line pointer is printed below the table.

Unknown skill IDs exit with a helpful message and non-zero status.

In the interactive menu, choose 3 / examples, optionally enter a skill ID, then browse the same table with GitHub links.

skillware test

Run skill bundle tests (test_skill.py) via pytest. Uses the same skill roots as skillware list (SKILLWARE_SKILL_PATH, --skills-root, cwd skills/, bundled registry).

Requires pytest (pip install -e ".[dev]" or pip install -e ".[dev,all]").

skillware test
skillware test finance/wallet_screening
skillware test --category compliance
skillware test --verbose
skillware test office/pdf_form_filler --no-header

Arguments and flags

Input Description
(no args) Run bundle tests under all resolved skill roots
<category>/<skill_name> Run one skill's test_skill.py
--category <name> Run all bundle tests in a category directory
--skills-root <path> Override the skills directory for this command
-v / --verbose Pass -v to pytest
--no-header Pass --no-header to pytest

Exit code matches pytest (non-zero on failures or missing test paths).

skillware paths

Show where Skillware looks for skills — same order as SkillLoader.load_skill() — with tier labels (project, external, bundled; order depends on legacy vs config — see Path resolution), per-root skill counts, and shadowing warnings when the same registry ID exists in multiple roots. Only existing roots are searched at load time; missing project directories are skipped, and bundled skills from pip install skillware remain available.

skillware paths
skillware paths --skills-root /path/to/my/skills

Flags

Flag Description
--skills-root <path> Override the skills directory for this command only (shows a single override root).

Non-interactive skillware paths is read-only. To persist project and external roots, use the interactive paths submenu (config -> paths, or the paths shortcut) or edit .skillware.yaml manually.

Interactive paths submenu (menu 4)

Input Action
1 / view Same table as skillware paths (resolution, tiers, shadowing)
2 / bundled Show bundled registry root (read-only; shipped with pip)
3 / project Set paths.project to auto or an explicit directory (saved to .skillware.yaml)
4 / external Add or remove paths.external entries (saved to project config)
5 / shadows Shadowing summary only
6 / flat List flat-layout skills (<root>/<name>/) that load but do not appear in skillware list
b / back Return to the main menu

Bundled registry paths cannot be edited. Global config (~/.config/skillware/config.yaml) is not modified by the submenu — use skillware config show to inspect merged settings.

skillware doctor

Check whether skills are valid and can load in the current environment — Manifest v2 schema validity (SCHEMA), manifest requirements (DEPS), skill.py import (LOAD), and required env_vars (ENVS) — without running execute(). Uses the same skill roots as skillware list.

skillware doctor
skillware doctor finance/wallet_screening
skillware doctor --category compliance
skillware doctor --skills-root /path/to/my/skills
skillware doctor --install

Arguments and flags

Input Description
(no args) Diagnose all registry skills visible to list
<category>/<skill_name> Diagnose one skill
--category <name> Diagnose all skills in a category
--skills-root <path> Override the skills directory for discovery and load
--install Check Python package install health (editable vs PyPI conflicts); ignores skill args

SCHEMA validates the manifest against the Manifest v2 JSON Schema and tag governance policy. DEPS validates manifest requirements. LOAD imports skill.py; skipped (—) when DEPS fails. ENVS checks required manifest env_vars via EnvSecretProvider (your shell, .env, or CI secrets — see API keys). Skills with no env_vars show —.

At the end of the diagnostic table, skillware doctor prints a summary of compliant manifests (e.g. 27/27 skill manifests satisfy Manifest v2 specification).

Exit code is non-zero (1) when any skill fails hard integrity checks (SCHEMA, DEPS, or LOAD). Missing ENVS produces an informational notice advising which keys are required before executing those skills, returning exit code 0 so offline health audits succeed without requiring full sets of third-party API keys. For full bundle behavior, use skillware test.

doctor --install reports duplicate/orphan skillware distributions, suggests Unix and Windows recovery commands, and exits 0 when install metadata is healthy. Also summarized in skillware config show under install (this Python).

Interactive menu: 5 / doctor.

skillware config

Show merged global + project Skillware configuration (read-only). The paths, mail, and presentation sections are active; other top-level keys are preserved for future settings.

skillware config show

Global config: ~/.config/skillware/config.yaml (Linux/macOS), %APPDATA%/skillware/config.yaml (Windows), or override with SKILLWARE_CONFIG_DIR.

Project config: .skillware.yaml in the repository root (walks up from cwd). See .skillware.yaml.example.

Example project file:

paths:
  project: auto
  external:
    - /path/to/private-skills
resolution:
  order:
    - project
    - external
    - bundled
legacy:
  honor_skillware_skill_path: true
presentation:
  theme: ocean
mail:
  addressbook_path: ~/.config/skillware/addressbook.yaml
  signature_path: ~/.config/skillware/mail_signature.txt
  signature_html_path: ~/.config/skillware/mail_signature.html
  signature_plain: |
    —
    Agent Name
    Skillware Project

When no config file exists, resolution stays legacy: SKILLWARE_SKILL_PATH → ./skills/ walk → bundled. When config exists, resolution.order applies (default: project → external → bundled). The bundled registry from pip install skillware is always included and cannot be disabled. Pip-only installs with no local skills/ folder still resolve bundled registry skills — only roots that exist on disk are searched; an empty project tier does not block bundled.

skillware config show reports the effective presentation.theme. To change the global theme without editing YAML, use any of:

  • skillware theme ocean — set directly
  • skillware theme — interactive picker (non-menu)
  • skillware → 8 / theme — same picker from the splash menu

The picker writes only presentation.theme in the global config and preserves unrelated settings.

A project .skillware.yaml value overrides the global selection while the CLI runs inside that project. The picker still saves the global preference and prints a notice that the project theme remains active. Remove or change the project presentation.theme value to use the global selection there. Missing, malformed, or unknown theme values fall back safely to pastel.

skillware mail

Operator UX for office/gmail_handler address book, email signatures (including multi-profile), and attachment path settings — without editing bundled skill files. Full operator guide: docs/skills/office/gmail_handler.md (fresh install checklist, precedence, plain vs HTML MIME, attachments, persistence).

skillware mail
skillware mail addressbook init
skillware mail addressbook add
skillware mail addressbook add --name "Jane" --email jane@example.com
skillware mail addressbook show
skillware mail addressbook validate
skillware mail addressbook set-path ~/.config/skillware/addressbook.yaml
skillware mail signature init
skillware mail signature init --force
skillware mail signature show
skillware mail signature set --file ./signature.txt
skillware mail signature validate
skillware mail signature clear
skillware mail signature profiles
skillware mail signature set-profile formal
skillware mail signature add-profile formal --html ~/.config/skillware/signatures/formal.html

Nothing is configured by default. Run addressbook init and signature init once to create files under your user config dir (~/.config/skillware/ or %APPDATA%/skillware/). That data survives skillware upgrades and reinstalls; it is not stored inside the pip wheel.

Precedence: environment variables (GMAIL_*) → project .skillware.yaml → global config.yaml → skill bundled read-only defaults.

Area Actions
Address book init, add (wizard or --name / --email / --aliases / --org / --id), show, validate, set-path
Signature init (plain + HTML + logo; --force overwrite), show, set (paste or --file), validate, clear

User config files (after init):

File Purpose
addressbook.yaml Contacts
mail_signature.txt Plain signature (text/plain MIME part)
mail_signature.html HTML signature (logo, —, links — what Gmail shows)
skillware_logo.png Local logo copy
config.yaml Registers mail.* paths

Env overrides (optional): GMAIL_ADDRESSBOOK_PATH, GMAIL_SIGNATURE_PATH, GMAIL_SIGNATURE_HTML_PATH, GMAIL_SIGNATURE_PLAIN, GMAIL_SCAN_STATE_PATH, GMAIL_SEND_LEDGER_PATH.

Interactive menu: 7 / mail. Submenu mirrors the commands above.

Test signature in your inbox (requires .env credentials):

python examples/gmail_signature_test_send.py --to you@example.com --preview-only
python examples/gmail_signature_test_send.py --to you@example.com

Non-interactive skillware mail (no subcommand) prints resolved paths and signature source — similar to the mail block in skillware config show.

skillware addressbook

Shared operator identity directory for mail and defi skills (public_0x EVM wallets on contacts). skillware mail addressbook … remains a backward-compatible alias.

skillware addressbook
skillware addressbook list
skillware addressbook list --with-wallet
skillware addressbook list --search john
skillware addressbook list --json
skillware addressbook init
skillware addressbook add
skillware addressbook edit john_doe
skillware addressbook set-wallet john_doe 0x71C7656EC7ab08859a784ab83b021a667C1D9f9
skillware addressbook remove john_doe --yes
skillware addressbook validate
skillware addressbook open
skillware addressbook open --dir

Interactive menu: config -> addressbook, or the addressbook shortcut. Full operator guide: Address book operator config. See also EVM operator config (tokens vs people).

skillware config open

Open global or project config in the OS file manager:

skillware config open
skillware config open --dir

skillware evm

Operator UX for EVM chain and RPC settings shared by defi skills. Full operator guide: EVM operator config (checklist, precedence, custom chains, tokens vs address book). This is not skillware chain (orchestration pipelines).

skillware evm
skillware evm init
skillware evm init --yes
skillware evm init --force
skillware evm chains list
skillware evm chains list --json
skillware evm chain add --name arbitrum --chain-id 42161 --rpc-env ARBITRUM_RPC_URL
skillware evm tokens list
skillware evm tokens list --json
skillware evm token add --chain base --symbol degen --address 0x4ed4E862860beD51a9570b96d89aF5E1B0Efefed --decimals 18
skillware evm rpc enable base
skillware evm validate
skillware evm open
skillware evm open --dir

Interactive menu: config -> evm, or the evm shortcut. RPC secrets: API keys — EVM RPC.

skillware context

Show SkillContext registry brief (discovered skills, compact blurbs). Does not execute skills.

skillware context show
skillware context show --skill optimization/prompt_rewriter
skillware context show --categories security,compliance --roots bundled --mode brief
skillware context show --export ctx.md
--mode Output
brief (default) One-line summary per discovered skill
tools_only Empty body (inspect skill list in header only)
directives Full instructions.md per skill — use for small fixed sets

See Skill chaining.

skillware chain

List, inspect, validate, and run named chains from merged config (chains: in .skillware.yaml / global config.yaml).

skillware chain list
skillware chain show sanitize_input
skillware chain validate
skillware chain validate sanitize_input
skillware chain run sanitize_input --var source_text="hello"
skillware chain run sanitize_input --var source_text=@./page.html --json
skillware chain dry-run scan_then_gate --var source_text=hi --var task_id=t1 \
  --var current_token_count=1000 --var max_allowed_tokens=32000
Subcommand Description
list Chain names, step counts, description, when
show <name> Steps, bindings, required host_input keys
validate [name] Structural + skill resolution; exit 1 on error (CI)
run <name> Execute via run_chain(); --var key=value or key=@file
dry-run <name> Resolve params and when without execute()

See Skill chaining.

Path resolution

skillware list, load_skill, test, and doctor share the same roots as SkillLoader.

Without config files (default):

  1. Roots listed in SKILLWARE_SKILL_PATH (OS path separator between multiple entries)
  2. A skills/ directory under the current working directory and its parents
  3. Bundled skills installed with the skillware package

With .skillware.yaml and/or global config:

  1. Tiers in resolution.order (default: project → external → bundled)
  2. paths.project: auto (same walk as above) or an explicit directory
  3. paths.external: persisted private/proprietary skill roots
  4. Bundled registry always last-resort fallback (always on)

Run skillware paths for a live view of resolved roots, tiers, and shadowing. Run skillware config show for merged YAML settings.

To point the CLI at custom roots without config files:

export SKILLWARE_SKILL_PATH=/path/to/my/skills
skillware list

Or copy .skillware.yaml.example to .skillware.yaml and list paths under paths.external.

Only skills with both manifest.yaml and skill.py present are shown — the same condition SkillLoader requires to load a skill successfully.

Skill ID vs manifest name vs LLM tool name

Concept Source Example (office/pdf_form_filler)
CLI / loader ID Folder path category/skill_name office/pdf_form_filler
manifest.yaml name Should match the registry ID office/pdf_form_filler
Gemini tool name Sanitized via to_gemini_tool() / _sanitize_gemini_tool_name() office_pdf_form_filler
Claude tool name Sanitized via to_claude_tool() office_pdf_form_filler
OpenAI / DeepSeek tool name Sanitized adapter name office_pdf_form_filler
Ollama prompt "tool" Same as manifest when using full IDs office/pdf_form_filler

skillware list always shows the path-derived ID; it does not read manifest["name"] for the ID column. Keep manifest name aligned with that ID so agent loops and SkillLoader.to_*_tool() stay consistent. SkillLoader.load_skill() warns via SkillwareIdentityWarning when a registry-layout skill has a missing or mismatched name (flat private skills under <skill_root>/<skill_name>/ are not checked). See Agent loops.

Color themes

skillware theme

Choose or set the CLI presentation theme (pastel, ocean, mono):

skillware theme
skillware theme ocean

Without a theme name, skillware theme opens the same interactive picker as config -> theme (also available via the theme shortcut). With a name, it saves globally immediately and prints a notice when project config overrides the effective theme in the current directory.

The selected theme is applied to tables, headings, categories, skill IDs, menus, links, statuses, errors, and the splash gradient.

Theme Description Splash gradient
pastel Default and fallback; preserves the original Skillware lavender, peach, mint, ice, sky, and blush palette #D4E4F1 → #79B6D8 → #EBD8DC
ocean Deep blue, sky blue, and cyan #0C4A6E → #0284C7 → #7DD3FC
mono Grayscale presentation #F0F0F0 → #A0A0A0 → #606060

Choose a theme interactively:

skillware theme
theme> ocean

Or set directly:

skillware theme ocean

From the splash menu:

skillware
> 8
theme> ocean

The selection takes effect for subsequent output in the same session and is used on the next CLI start. The splash is printed once at startup, so restart the CLI to see the newly selected splash gradient.

short_description field

Skill manifests can include a short_description field (max 80 chars) for a concise one-line summary shown in skillware list:

short_description: "Screens Ethereum wallets against OFAC sanctions and mixer lists."

If short_description is absent, the CLI falls back to the first sentence of description, truncated to 80 characters.

CLI history

Commits that touched the skillware CLI tool, its subcommands, or its documentation page (docs/usage/cli.md).

Commit Description Date Version Contributors
ad55a64 feat(cli): consolidate configuration under option 4 config and prioritize find (#455) (#458) 31 Oct 2026 0.6.1 @ect2000
0edccfc feat(core,cli): add SkillMatcher engine and skillware find command (#456) 26 Oct 2026 0.6.1 @rosspeili
d2a306c chore(release): cut v0.6.0 with bio category, sequence_ops foundational engine, wallet_screening v2, and 4.8s startup optimizations (#454) 24 Oct 2026 0.6.0 @rosspeili
e8bf3bf perf(cli): resolve startup latency, scope distribution checks, and doctor env handling (#451) 24 Oct 2026 0.6.0 @rosspeili
f522b17 chore(release): cut v0.5.9 with Manifest v2 Universal Taxonomy, telemetry_normalizer, AcroForm engine, and SPDX licensing 20 Oct 2026 0.5.9 @rosspeili
831856d fix(catalog,cli): set optimization skills shape to middleware, restore CHANGELOG Added header, and expand cli usage examples (#440) 19 Oct 2026 0.5.9 @rosspeili
6d175e6 feat(cli,docs): implement Manifest v2 discovery flags, info command, doctor schema checks, and catalog exporter (#440) 19 Oct 2026 0.5.9 @rosspeili
cdd258f docs(cli): sync interactive menu options and introduce CLI history table (#433) 14 Oct 2026 0.5.9 @rosspeili
2f20e20 feat(core): standardize SPDX license identifiers and copyright headers (#416) (#422) 11 Oct 2026 0.5.9 @blade-dancer
f079bf3 fix(cli): detect editable/PyPI overlap and harden version display (#333) (#388) 25 Sep 2026 0.5.7 @rosspeili
85d29f4 docs: addressbook guide, evm tokens list, and example polish (#373, #374) 23 Sep 2026 0.5.7 @rosspeili
30234c9 feat(evm): add token add CLI, live integration tests, and card v0.3.0 ripples 23 Sep 2026 0.5.7 @rosspeili
004e8cb feat(core): shared addressbook public_0x and evm_tx_handler v0.3.0 (#373, #374) 23 Sep 2026 0.5.7 @rosspeili
13040ba feat(core): add shared EVM operator config and skillware evm CLI (#379) (#380) 23 Sep 2026 0.5.7 @rosspeili
9e47261 feat(cli): add theme subcommand and align help topics with context/chains 04 Sep 2026 0.5.5 @rosspeili
5fcf76a feat(cli): add theme picker and CLI color themes (#248, #305) 03 Sep 2026 0.5.4 @harshthakur3
a1bab61 Add mail CLI and config for gmail_handler operator UX (#292) 19 Aug 2026 0.5.1 @rosspeili
50c08fb feat(cli): interactive paths editor, tiered help, and nav (#247) (#285) 12 Aug 2026 0.4.9 @rosspeili
eb20942 feat(config,cli): persistent YAML config and skillware config show (#246) (#283) 10 Aug 2026 0.4.9 @rosspeili
9de244b feat(loader,cli): inspect-only load and skillware doctor (#235) (#282) 09 Aug 2026 0.4.9 @rosspeili
c22c8df feat(cli): add skillware paths and shared discovery module (#249) 10 Jul 2026 0.4.5 @rosspeili
b867202 docs: add CLI splash art and interactive menu screenshot to cli.md 08 Jul 2026 0.4.3 @rosspeili
087b0b3 feat(cli): fix splash logo and add Rich gradient branding 08 Jul 2026 0.4.2 @rosspeili
93d0d9e docs: align CLI docs with examples menu and pip-install behavior (#194) 29 Jun 2026 0.4.0 @uttam12331
89a99a7 feat: add interactive examples menu and GitHub source links (#126) 26 Jun 2026 0.3.8 @rosspeili
9827812 feat: add skillware examples CLI and list --examples (#126) 26 Jun 2026 0.3.8 @rosspeili
b713fe4 feat: add skillware test CLI for bundle tests (#83) (#188) 24 Jun 2026 0.3.8 @rosspeili
04a3d69 Wire skillware --help to cmd_help and clean up stale [cli] mentions 14 Jun 2026 0.3.6 @rizzoMartin
dd90896 Add main.py, cmd_help, --version, and move rich to core 14 Jun 2026 0.3.6 @rizzoMartin
20093df feat: version support policy and CLI advisory for unsupported installs (#132) (#137) 28 May 2026 0.3.3 @rosspeili
0bd2410 Feat/issue 130 cli polish ux (#131) 27 May 2026 0.3.2 @rizzoMartin
5b68b78 Feat/issue 93 cli visual redesign (#129) 26 May 2026 0.3.2 @rizzoMartin
5e524a1 Feat/issue 16 cli for skill discovery (#84) 22 May 2026 0.2.9 @rizzoMartin