Skip to content

docs: add Agent Skills bundle for AI agent harnesses#108

Merged
nicolotognoni merged 2 commits into
mainfrom
worktree-skills-bootstrap
May 27, 2026
Merged

docs: add Agent Skills bundle for AI agent harnesses#108
nicolotognoni merged 2 commits into
mainfrom
worktree-skills-bootstrap

Conversation

@nicolotognoni
Copy link
Copy Markdown
Collaborator

Summary

  • Ship an Anthropic Agent Skills-compliant bundle under skills/ so any compatible AI agent (Claude Code, Claude Desktop, OpenClaw, Hermes, Cursor, Codex, and ~50 others) can learn the Patter SDK end-to-end via npx skills add patterai/patter.
  • Five skills + five references covering install, agent build, telephony, tools/handoffs, and call inspection. All code samples are dual Python + TypeScript.
  • No SDK runtime changes; this is documentation shipped to the AI agent ecosystem.

Implementation

  • Skills shipped (each with YAML frontmatter name + description + license + compatibility + metadata.{author,version,parity}):
    • skills/setup-patter/SKILL.md — install + provider/carrier env keys.
    • skills/build-voice-agent/SKILL.md + references/{realtime-mode,convai-mode,pipeline-mode}.md — pick between OpenAI Realtime 2 (GA), ElevenLabs ConvAI, or the STT→LLM→TTS pipeline.
    • skills/configure-telephony/SKILL.md + references/{twilio,telnyx}.md — carrier setup, webhook URLs, tunnels.
    • skills/add-tools-and-handoffs/SKILL.md@tool / defineTool, webhook tools, reassurance, transfer_call, end_call, guardrails.
    • skills/inspect-calls-and-metrics/SKILL.md — dashboard mount, CallMetrics, CSV/JSON export, dashboard_token auth.
  • Top-level documentation touched: README.md gets an ## Agent Skills section with the install snippet. CHANGELOG.md gets an ### Added entry under ## Unreleased.
  • No new dependencies, no runtime impact, no public-API change.
  • API surface in the skills verified against the 0.6.2 source: OpenAIRealtime2 is the GA engine, webhook_url lives on the Patter constructor (not serve()), on_call_end is a serve() kwarg receiving a dict, dashboard auth uses dashboard_token (bearer), the metrics store is exposed via phone.metrics_store (Python) / phone.metricsStore (TypeScript), machine_detection defaults to True in 0.6.2, recording is server-wide via phone.serve(recording=True).

Breaking change?

No. Skills are reference content, not a new runtime surface. Existing imports and APIs are unchanged.

Test plan

  • find skills -type f -name SKILL.md | xargs -I {} sh -c 'head -1 {} | grep -q "^---$"' — every SKILL.md starts with valid frontmatter.
  • For each SKILL.md, the YAML name matches the parent directory name (Anthropic Agent Skills spec requirement).
  • description length ≤ 1024 chars for every skill (verified locally — longest is 676).
  • Code samples compile/import against getpatter==0.6.2 (Python) and getpatter@0.6.2 (TypeScript). No reference to symbols that don't exist in libraries/python/getpatter/__init__.py or libraries/typescript/src/index.ts.
  • No competitor SDK names in source files (only provider integrations we ship: OpenAI, ElevenLabs, Deepgram, Cartesia, Twilio, Telnyx). Compliant with .claude/rules/no-competitor-references.md.
  • No internal paths, personal emails, or live secrets in skill text.
  • After merge: npx skills add patterai/patter --skill build-voice-agent succeeds on main.

Docs updates

  • skills/ — all new (11 files).
  • README.md — added "Agent Skills" section between "Templates" and "Configuration".
  • CHANGELOG.md## Unreleased### Added entry describing the bundle.

Five Anthropic Agent Skills spec-compliant SKILL.md files plus 5
references under skills/ that teach any compatible AI agent (Claude
Code, Claude Desktop, OpenClaw, Hermes, Cursor, Codex, etc.) how to
use the Patter SDK end-to-end at version 0.6.2. Discoverable via
`npx skills add patterai/patter --skill <name>` and surfaces on
skills.sh via install telemetry. No SDK runtime changes.

Skills:
- setup-patter — install + provider/carrier env keys
- build-voice-agent — Realtime / ConvAI / Pipeline modes
- configure-telephony — Twilio + Telnyx webhook + tunnel + recording
- add-tools-and-handoffs — custom tools, transfer/end, guardrails
- inspect-calls-and-metrics — dashboard + CallMetrics + cost export

API references verified against the 0.6.2 source: OpenAIRealtime2 is
the GA default, webhook_url lives on the Patter constructor (not
serve()), on_call_end is a serve() kwarg, dashboard auth uses
dashboard_token, MetricsStore is accessed via phone.metrics_store /
phone.metricsStore, machine_detection defaults to True, recording is
server-wide via phone.serve(recording=True).
@nicolotognoni nicolotognoni merged commit 1a4df69 into main May 27, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant