Skip to content

Latest commit

 

History

History
95 lines (84 loc) · 15.4 KB

File metadata and controls

95 lines (84 loc) · 15.4 KB

Skillware Examples Index

These are usage examples, not tests. Runnable provider demos live here; automated tests live in skills/**/test_skill.py (bundle) and tests/ (framework and optional maintainer depth). Local-execute demo scripts are smoke-tested in CI via tests/test_examples_smoke.py to guard against import and loader regressions. See TESTING.md.

Runnable examples in this directory show how to load Skillware skills, adapt them for a provider, execute local skill logic, and return tool results to an agent loop. After pip install skillware, run skillware examples or skillware list --examples from any directory to browse the index in the terminal; when no local examples/README.md is present, the index is fetched from GitHub (network required); see CLI reference. Provider setup details live in the usage guides:

Install the skill extra for each script (see Install extras), plus an SDK extra when the provider column is not local execute:

pip install "skillware[office_pdf_form_filler]" "skillware[gemini]"

For local development with every skill and SDK:

pip install -e ".[dev,all,agents]"

Runnable Scripts

Script Skill ID Provider Required extra Required env vars Description
mental_coach_demo.py wellness/mental_coach Local execute [wellness_mental_coach] None Demonstrates coaching, crisis escalation, and blocked clinical paths locally.
korean_slang_demo.py linguistics/korean_slang Local execute [linguistics_korean_slang] None Offline Korean Gen-Z slang interpret, suggest, lookup, unmatched, and blocked-term filter.
build_dataset_demo.py data_engineering/synthetic_generator Local execute (Gemini backend) [data_engineering_synthetic_generator], [gemini] GOOGLE_API_KEY Generates a JSONL synthetic dataset with the synthetic generator skill.
claude_pdf_form_filler.py office/pdf_form_filler Claude [office_pdf_form_filler], [claude] ANTHROPIC_API_KEY Uses Claude with the PDF form filler skill to map instructions to fields.
claude_tos_evaluator.py compliance/tos_evaluator Claude [compliance_tos_evaluator], [claude] ANTHROPIC_API_KEY Runs a Claude tool loop for website automation policy review.
claude_issue_resolver.py dev_tools/issue_resolver Claude [dev_tools_issue_resolver], [claude] ANTHROPIC_API_KEY; optional GITHUB_TOKEN Claude loop for GitHub issue analysis; fetches issue data after prepare (sample: issue #123).
claude_wallet_check.py finance/wallet_screening Claude [finance_wallet_screening], [claude] ANTHROPIC_API_KEY, ETHERSCAN_API_KEY Screens an Ethereum wallet and returns the result through a Claude tool loop.
deepseek_tos_evaluator.py compliance/tos_evaluator DeepSeek [compliance_tos_evaluator], [openai] DEEPSEEK_API_KEY Uses the OpenAI-compatible DeepSeek API for terms-of-service evaluation.
gemini_pdf_form_filler.py office/pdf_form_filler Gemini [office_pdf_form_filler], [gemini] GOOGLE_API_KEY, ANTHROPIC_API_KEY Uses Gemini as the agent while the PDF skill calls Anthropic for form filling.
gemini_tos_evaluator.py compliance/tos_evaluator Gemini [compliance_tos_evaluator], [gemini] GOOGLE_API_KEY Runs the terms-of-service evaluator with a Gemini function-calling loop.
gemini_wallet_check.py finance/wallet_screening Gemini [finance_wallet_screening], [gemini] GOOGLE_API_KEY, ETHERSCAN_API_KEY Screens an Ethereum wallet with Gemini orchestration and Etherscan data.
gemini_evm_tx_handler.py defi/evm_tx_handler Gemini [defi_evm_tx_handler], [gemini] GOOGLE_API_KEY; for live swaps also AGENT_WALLET_PRIVATE_KEY, BASE_RPC_URL or ETHEREUM_RPC_URL. Set EVM_TX_HANDLER_EXAMPLE_DEMO=1 for mocked flow without keys. Resolve → quote → preview → execute buy flow via Gemini tool loop (or demo mode).
claude_evm_tx_handler.py defi/evm_tx_handler Claude [defi_evm_tx_handler], [claude] ANTHROPIC_API_KEY; for live swaps also AGENT_WALLET_PRIVATE_KEY, RPC URLs. Demo: EVM_TX_HANDLER_EXAMPLE_DEMO=1. Claude tool loop for structured DeFi intent and optional execute after confirmation.
mica_claude_flow.py compliance/mica_module Claude [compliance_mica_module], [claude] ANTHROPIC_API_KEY Runs a MiCA compliance agent loop through Claude.
mica_ollama_flow.py compliance/mica_module Ollama [compliance_mica_module]; install ollama separately None Runs a local Ollama MiCA flow with prompt-mode tool calling.
mica_rag_flow.py compliance/mica_module Gemini [compliance_mica_module], [gemini] GOOGLE_API_KEY Runs the MiCA RAG flow with Gemini.
ollama_skills_test.py finance/wallet_screening, office/pdf_form_filler, optimization/prompt_rewriter Ollama [finance_wallet_screening], [office_pdf_form_filler], [optimization_prompt_rewriter]; install ollama separately ETHERSCAN_API_KEY, ANTHROPIC_API_KEY Loads multiple skills and tests prompt-mode tool calling with Ollama.
ollama_tos_evaluator.py compliance/tos_evaluator Ollama [compliance_tos_evaluator]; install ollama separately None Runs the terms-of-service evaluator with local Ollama prompt-mode calls.
openai_tos_evaluator.py compliance/tos_evaluator OpenAI [compliance_tos_evaluator], [openai] OPENAI_API_KEY Runs the terms-of-service evaluator with OpenAI function calling.
openai_compatible_host.py compliance/tos_evaluator Groq (OpenAI-compatible) [compliance_tos_evaluator], [openai] GROQ_API_KEY, GROQ_MODEL Runs the terms-of-service evaluator through Groq's OpenAI-compatible API.
bedrock_tos_evaluator.py compliance/tos_evaluator AWS Bedrock Converse [compliance_tos_evaluator], [bedrock] AWS_REGION, BEDROCK_MODEL_ID; AWS credentials via IAM or env Runs the terms-of-service evaluator through Bedrock Converse tool use.
secret_provider_demo.py finance/wallet_screening Local execute [finance_wallet_screening] None Host-injects ETHERSCAN_API_KEY via MappingSecretProvider and config= without setting os.environ.
pii_guardrail_flow.py compliance/pii_masker Local execute [compliance_pii_masker] None Demonstrates local PII masking before passing text to an external agent.
prompt_injection_firewall_demo.py security/prompt_injection_firewall Local execute [security_prompt_injection_firewall] None Offline prompt-injection scan and sanitization with no API keys.
sanitize_input_chain_demo.py security/prompt_injection_firewall, optimization/prompt_rewriter Local execute [security_prompt_injection_firewall], [optimization_prompt_rewriter] None Named chain demo: firewall then rewriter with conditional skip (run_chain).
skill_context_gemini_loop.py security/prompt_injection_firewall, monitoring/token_limiter Gemini (Phase 2) [security_prompt_injection_firewall], [monitoring_token_limiter], [gemini] Optional GOOGLE_API_KEY and SKILL_CONTEXT_GEMINI_LIVE=1 for Phase 2 Phase 1 (default): offline SkillContext brief + tools. Phase 2: Gemini multi-tool loop via ctx.execute().
deceptive_ui_guard_demo.py security/deceptive_ui_guard Local execute [security_deceptive_ui_guard] None Offline deceptive UI scan using fixture HTML recreations of documented dark patterns (confirm shaming, drip pricing, forced continuity, mislabeled CTAs).
prompt_compression_demo.py optimization/prompt_rewriter Local execute [optimization_prompt_rewriter] None Demonstrates prompt compression without a provider loop.
context_optimizer_demo.py optimization/context_optimizer Local execute [optimization_context_optimizer] None Query-aware extractive selection from bundled sample policy (fastembed; first run may download model).
context_optimizer_chain_demo.py security/prompt_injection_firewall, optimization/context_optimizer Local execute [security_prompt_injection_firewall], [optimization_context_optimizer] None Trust-boundary chain: firewall then optimizer before a hypothetical main LLM call.
context_optimizer_gemini_loop.py optimization/context_optimizer Gemini (optional) [optimization_context_optimizer], [gemini] Optional GOOGLE_API_KEY and CONTEXT_OPTIMIZER_GEMINI_LIVE=1 Optimizer selection then Gemini answer constrained to optimized_context.
context_optimizer_claude_loop.py optimization/context_optimizer Claude (optional) [optimization_context_optimizer], [claude] Optional ANTHROPIC_API_KEY and CONTEXT_OPTIMIZER_CLAUDE_LIVE=1 Optimizer selection then Claude answer constrained to optimized_context.
novelty_extractor_demo.py data_engineering/novelty_extractor Local execute [data_engineering_novelty_extractor] None Demonstrates multi-turn corpus distillation using local embeddings with no API key.
gemini_novelty_extractor.py data_engineering/novelty_extractor Gemini [data_engineering_novelty_extractor], [gemini] GOOGLE_API_KEY Runs the novelty extractor with a Gemini function-calling loop.
ollama_novelty_extractor.py data_engineering/novelty_extractor Ollama [data_engineering_novelty_extractor]; install ollama separately None Runs the novelty extractor with local Ollama prompt-mode calls.
gemini_issue_resolver.py dev_tools/issue_resolver Gemini [dev_tools_issue_resolver], [gemini] GOOGLE_API_KEY; optional GITHUB_TOKEN Gemini loop for GitHub issue analysis; fetches issue data after prepare (sample: issue #123).
ollama_issue_resolver.py dev_tools/issue_resolver Ollama [dev_tools_issue_resolver]; install ollama separately optional GITHUB_TOKEN; OLLAMA_MODEL (default gemma4:e2b) Ollama prompt-mode loop for GitHub issue analysis (sample: issue #123).
token_limiter_loop.py monitoring/token_limiter Local execute [monitoring_token_limiter] None Simulates a runaway task hitting a token ceiling with deterministic budget checks.
gemini_token_limiter.py monitoring/token_limiter Gemini [monitoring_token_limiter], [gemini] Optional GOOGLE_API_KEY for Phase 2 live loop Local budget simulation plus optional Gemini tool loop.
claude_token_limiter.py monitoring/token_limiter Claude [monitoring_token_limiter], [claude] Optional ANTHROPIC_API_KEY for Phase 2 live loop Local budget simulation plus optional Claude tool loop.
kpi_gate_demo.py monitoring/kpi_gate Local execute [monitoring_kpi_gate] None Offline KPI gate demo: weekly snapshot vs policy charter and benchmark doctrine, honest insufficient_data, and fail-closed contract errors.
gemini_uk_companies_house_handler.py finance/uk_companies_house_handler Gemini [finance_uk_companies_house_handler], [gemini] GOOGLE_API_KEY, COMPANIES_HOUSE_API_KEY; optional GEMINI_MODEL Interactive v1.3.0 loop: composites, role/name filtering, filing helpers, turn-by-turn pipelines, disambiguation, record truncation limits.
claude_uk_companies_house_handler.py finance/uk_companies_house_handler Claude [finance_uk_companies_house_handler], [claude] ANTHROPIC_API_KEY, COMPANIES_HOUSE_API_KEY; optional ANTHROPIC_MODEL (default claude-haiku-4-5-20251001) Interactive v1.3.0 loop with multi-turn tool chaining, role/name filters, and disambiguation hints.
uk_companies_house_handler_demo.py finance/uk_companies_house_handler Local execute [finance_uk_companies_house_handler] None Mocked v1.3.0 flows: composites, role/name filtering, filing helpers, turn-by-turn run_pipeline, disambiguation resume, record truncation limits.
bg_remover_demo.py creative/bg_remover Local execute [creative_bg_remover] None Demonstrates offline background removal from a local image and optionally writes a transparent PNG.
deck_builder_demo.py creative/deck_builder Local execute [creative_deck_builder] None Demonstrates offline presentation assembly from JSON deck specs with charts, tables, bullets, and speaker notes.
deck_builder_chain_demo.py creative/bg_remover, creative/deck_builder Local execute [creative_bg_remover], [creative_deck_builder] None Demonstrates SkillContext chaining for outline suggestion, transparent logo generation, deck linting, and final rendering.
semantic_web_proxy_demo.py data_engineering/semantic_web_proxy Local execute [data_engineering_semantic_web_proxy] None Demonstrates offline boilerplate stripping, opt-in comments, the JavaScript-render warning, and the SSRF guard using bundled fixture HTML.
gemini_gmail_minimal.py office/gmail_handler Gemini [office_gmail_handler], [gemini] GOOGLE_API_KEY, GMAIL_ADDRESS, GMAIL_APP_PASSWORD Minimal interactive loop — Gemini tool calling wired to Gmail (README quick start).
pay_and_notify_demo.py office/gmail_handler, defi/evm_tx_handler Local execute [office_gmail_handler], [defi_evm_tx_handler] Live: .env mail + wallet + BASE_RPC_URL, skillware addressbook init, skillware evm init. Smoke: PAY_NOTIFY_DEMO=1 Reproducible SkillContext chain: resolve → transfer → email receipt. Edit RECIPE constants at top of script.
gmail_handler_demo.py office/gmail_handler Local execute [office_gmail_handler] None Mocked resolve, preview/send gate, search, and read flow (no Gmail credentials).
gmail_signature_test_send.py office/gmail_handler Local execute [office_gmail_handler] GMAIL_ADDRESS, GMAIL_APP_PASSWORD; run skillware mail signature init first Preview or send one test message to verify plain + HTML signature.
gemini_gmail_handler.py office/gmail_handler Gemini [office_gmail_handler], [gemini] GOOGLE_API_KEY, GMAIL_ADDRESS, GMAIL_APP_PASSWORD (dedicated agent mailbox; demo: GMAIL_HANDLER_EXAMPLE_DEMO=1) Interactive Gemini loop for resolve, search, read, preview/send mail.

Notes

  • Skill extras are listed per script above. Empty extras ([] in pyproject.toml) still install core + skillware; use them so docs stay stable when a skill gains new runtime deps.
  • Agent-side model keys such as GOOGLE_API_KEY, ANTHROPIC_API_KEY, OPENAI_API_KEY, and DEEPSEEK_API_KEY are documented in the provider guides.
  • Skill runtime keys such as ETHERSCAN_API_KEY are documented in each skill manifest and on the skill catalog pages.
  • Ollama examples require the Python ollama package, a local Ollama server, and the model named in the script, but no cloud API key.