|
Faster skill development |
Production-ready skills included |
Scripts & templates |
Boilerplate to write |
Build Claude Code skills in minutes, not days.
Templates, wizards, and tools from production implementations.
> "Create a new Datadog Assistant Skills project"
β Project scaffolded with best practices
β Shared library configured
β First skill template ready
β Test infrastructure in place
Get Started β’ Skills β’ Use Cases β’ Templates
From Claude Code:
/plugin grandcamel/Assistant-Skills
This adds the marketplace and installs the assistant-skills plugin with all 7 skills.
Alternative: Clone locally
git clone https://github.com/grandcamel/Assistant-Skills.git
cd Assistant-Skills && /plugin .Run the setup wizard to configure the shared Python environment:
/assistant-skills-setup
The wizard will:
- Create a shared venv at
~/.assistant-skills-venv/ - Install Python dependencies
- Add the
claude-asshell function to your.bashrc/.zshrc
After setup, use claude-as instead of claude to run with dependencies:
claude-as # Runs Claude with Assistant Skills venvAlternative: Run in Docker insteadβsee Docker Usage.
"Create a new Slack Assistant Skills project"
Or use the interactive wizard:
/assistant-builder-setup
Claude scaffolds your project with:
- Optimized directory structure
- Shared library with HTTP client, error handling
- First skill template ready to customize
- Test infrastructure configured
That's it. Start building your skills immediately.
| Skill | Purpose | Example |
|---|---|---|
| setup-wizard | Configure shared venv & shell | /assistant-skills-setup |
| assistant-builder | Create & extend projects | "Add a search skill to my project" |
| skills-optimizer | Audit token efficiency | "Analyze my skill for optimization" |
| landing-page | Generate branded READMEs | "Create a landing page for this project" |
| library-publisher | Publish shared libs to PyPI | "Publish my shared library as a PyPI package" |
| e2e-testing | Set up E2E test infrastructure | "Add E2E tests to my plugin" |
| safe-mode | Risk-based CLI permission enforcement | claude-safe -d -l caution |
Configure the shared Python environment for all Assistant Skills plugins.
# Run the interactive setup wizard
/assistant-skills-setup
# After setup, use claude-as to run with dependencies
claude-asCreates ~/.assistant-skills-venv/ (shared venv) and adds claude-as function to shell.
Interactive wizard for creating new Assistant Skills projects or adding skills to existing ones.
# Create new project
python skills/assistant-builder/scripts/scaffold_project.py
# Add skill to existing project
python skills/assistant-builder/scripts/add_skill.py --name "search"
# Validate project structure
python skills/assistant-builder/scripts/validate_project.py /path/to/projectAudit skills for token efficiency and progressive disclosure compliance.
# Analyze a skill (get grade A-F)
./skills/skills-optimizer/scripts/analyze-skill.sh ~/.claude/skills/my-skill
# Audit all skills
./skills/skills-optimizer/scripts/audit-all-skills.sh ~/.claude/skillsGenerate professional README landing pages with consistent branding.
# Analyze project metadata
python skills/landing-page/scripts/analyze_project.py /path/to/project
# Generate logo SVG
python skills/landing-page/scripts/generate_logo.py --name jira --primary "#0052CC"Extract shared libraries and publish them as PyPI packages with automated CI/CD.
# Analyze existing shared library
python skills/library-publisher/scripts/analyze_library.py /path/to/project
# Scaffold PyPI package
python skills/library-publisher/scripts/scaffold_package.py \
--name "myproject-lib" \
--source /path/to/lib \
--output ~/myproject-lib
# Migrate project to use new package
python skills/library-publisher/scripts/migrate_imports.py \
--project /path/to/project \
--package myproject_libSet up end-to-end testing infrastructure for Claude Code plugins.
# Initialize E2E testing infrastructure
python skills/e2e-testing/scripts/setup_e2e.py /path/to/project
# Auto-generate test cases from plugin structure
python skills/e2e-testing/scripts/generate_test_cases.py /path/to/project
# Run tests
./scripts/run-e2e-tests.sh
# Update documentation with E2E info
python skills/e2e-testing/scripts/update_docs.py /path/to/projectRisk-based permission enforcement wrapper for Claude CLI. Restricts CLI operations based on configurable risk thresholds.
# Auto-discover plugins, safe level (read-only only)
./scripts/claude-safe -d
# Caution level (allows creates/updates)
./scripts/claude-safe -d -l caution
# Preview permissions without running
./scripts/claude-safe -d -n -v
# Pass arguments to claude
./scripts/claude-safe -d -l warning -- --model sonnetRisk levels: safe (read-only) < caution (creates) < warning (deletes) < danger (irreversible).
Dependencies: bash 4.0+, yq, jq (brew install yq jq)
Developers building Claude Code integrations
- Skip the boilerplateβstart with production patterns
- Follow proven architecture from 40+ skill implementations
- Get token-efficient skills that don't bloat context
- Use TDD workflow with test templates included
Teams standardizing on Claude Code
- Consistent skill structure across projects
- Shared library patterns for common functionality
- Documentation templates for team onboarding
- Quality gates with optimization scoring
Open source maintainers
- Professional landing pages in minutes
- Branded logos with terminal prompt design
- Consistent visual identity across repos
- Badge and stats automation
Comprehensive templates derived from production implementations:
| Folder | Purpose |
|---|---|
templates/00-project-lifecycle/ |
API research, GAP analysis, architecture planning |
templates/01-project-scaffolding/ |
Project initialization, directory structure, configs |
templates/02-shared-library/ |
HTTP client, error handling, auth patterns |
templates/03-skill-templates/ |
SKILL.md format, script templates, validators |
templates/04-testing/ |
TDD workflow, pytest fixtures, test patterns |
templates/05-documentation/ |
Workflow guides, reference docs, examples |
templates/06-git-and-ci/ |
Commit conventions, GitHub Actions, releases |
Build a complete project in 8 phases:
| Phase | Templates | Deliverable |
|---|---|---|
| 1. Research | 00-project-lifecycle/01-api-research-prompt.md |
API capabilities documented |
| 2. Architecture | 00-project-lifecycle/03-architecture-prompt.md |
Skill boundaries defined |
| 3. Scaffolding | 01-project-scaffolding/project-init-prompt.md |
Project structure created |
| 4. Shared Library | 02-shared-library/shared-lib-prompt.md |
HTTP client, error handling |
| 5. Skills | 03-skill-templates/skill-creation-prompt.md |
Each skill implemented |
| 6. Testing | 04-testing/tdd-workflow-prompt.md |
Tests with 80%+ coverage |
| 7. Documentation | 05-documentation/WORKFLOWS.md.template |
User guides |
| 8. CI/CD | 06-git-and-ci/github-workflows/ |
GitHub Actions configured |
All templates use {{PLACEHOLDER}} syntax:
| Placeholder | Example |
|---|---|
{{API_NAME}} |
GitHub, Stripe, JIRA |
{{TOPIC}} |
github, stripe, jira |
{{SKILL_NAME}} |
issues, payments, search |
{{BASE_URL}} |
https://api.github.com |
Before shipping:
- API research and GAP analysis complete
- All skills implemented with SKILL.md files
- Unit tests with 80%+ coverage
- Router skill routes to all skills
- CI/CD configured with GitHub Actions
Production-ready Python utilities available via PyPI:
pip install assistant-skills-lib| Module | Purpose |
|---|---|
formatters |
Output formatting (tables, trees, colors, timestamps) |
validators |
Input validation (emails, URLs, dates, pagination) |
template_engine |
Template loading and placeholder replacement |
project_detector |
Find existing Assistant Skills projects |
cache |
Response caching with TTL and LRU eviction |
error_handler |
Exception hierarchy and @handle_errors decorator |
from assistant_skills_lib import (
format_table, format_tree,
validate_email, validate_url,
Cache, handle_errors
)
@handle_errors
def fetch_data(resource_id):
return api.get(f"/resources/{resource_id}")π¦ assistant-skills-lib on PyPI
flowchart TD
U["User Request"] --> CC["Claude Code"]
CC --> AS["Assistant Skills<br/>Plugin"]
AS --> SW["setup-wizard<br/>Environment Setup"]
AS --> AB["assistant-builder<br/>Project Scaffolding"]
AS --> SO["skills-optimizer<br/>Token Efficiency"]
AS --> LP["landing-page<br/>README Branding"]
AS --> LIB["library-publisher<br/>PyPI Publishing"]
AS --> E2E["e2e-testing<br/>E2E Test Infrastructure"]
AS --> SM["safe-mode<br/>Permission Enforcement"]
SW --> VE["Shared Venv<br/>~/.assistant-skills-venv"]
AB --> T["Templates"]
AB --> SH["Shared Library"]
SO --> AN["Analyzers"]
LP --> TM["Template Engine"]
LIB --> PY["PyPI Package<br/>Generation"]
E2E --> DOC["Docker + pytest"]
SM --> SG["SAFEGUARDS.md<br/>Permission Blocks"]
Skills use 3 levels to minimize token usage:
| Level | Target | Loaded When |
|---|---|---|
| L1: Metadata | ~200 chars | Startup (all skills) |
| L2: SKILL.md | <500 lines | Skill triggered |
| L3: Nested docs | Variable | Explicitly accessed |
Templates derived from production implementations:
| Project | Skills | Tests | Status |
|---|---|---|---|
| Jira-Assistant-Skills | 14 | 560+ | Production |
| Confluence-Assistant-Skills | 14 | 1,039 | Production |
| Splunk-Assistant-Skills | 13 | 248+ | Production |
pip install -r requirements.txt
# Run all skill tests (248 tests)
pytest skills/*/tests/ -v
# Run specific skill tests
pytest skills/assistant-builder/tests/ -vE2E tests validate the plugin by interacting with the actual Claude Code CLI:
# Run in Docker (requires ANTHROPIC_API_KEY)
./scripts/run-e2e-tests.sh
# Run locally (prefers OAuth, falls back to API key)
./scripts/run-e2e-tests.sh --localAuthentication:
- Local runs: Prefers OAuth credentials (
~/.claude.json). Runclaude auth loginfirst. - Docker runs: Requires
ANTHROPIC_API_KEYenvironment variable.
Failed test responses are logged to test-results/e2e/responses_latest.log.
See tests/e2e/README.md for details.
Assistant-Skills/
βββ .claude-plugin/
β βββ plugin.json # Plugin manifest
β βββ marketplace.json # Marketplace registry
βββ commands/ # Slash commands (at project root)
β βββ assistant-skills-setup.md
β βββ assistant-builder-setup.md
βββ agents/ # Skill reviewer agents (at project root)
βββ skills/ # Skills (autodiscovered at project root)
β βββ setup-wizard/ # Environment setup
β βββ assistant-builder/ # Project scaffolding
β βββ skills-optimizer/ # Token optimization
β βββ landing-page/ # README branding
β βββ library-publisher/ # PyPI publishing
β βββ e2e-testing/ # E2E test infrastructure
β βββ safe-mode/ # Permission enforcement
βββ hooks/ # Plugin hooks (at project root)
β βββ hooks.json # SessionStart health checks
βββ docker/ # Docker infrastructure
β βββ runtime/ # Claude Code runtime image
β βββ e2e/ # E2E test image
βββ .github/workflows/ # GitHub Actions
β βββ docker-publish.yml # Publish image on release
βββ templates/ # Project templates
β βββ 00-project-lifecycle/
β βββ 01-project-scaffolding/
β βββ ...
βββ tests/ # E2E and integration tests
β βββ e2e/ # End-to-end tests
βββ pytest.ini # Pytest configuration
βββ conftest.py # Shared test fixtures
βββ requirements.txt # Python dependencies
βββ README.md
Note: All plugin components (commands/, agents/, skills/, hooks/) are at project root.
Paths in .claude-plugin/plugin.json are relative to project root, NOT to .claude-plugin/.
Run Claude Code with Assistant Skills in a Docker container. No local Python or Node.js installation required.
# Pull and run (API key authentication)
export ANTHROPIC_API_KEY=sk-ant-...
./scripts/claude-as-docker.sh
# Or use OAuth (mount existing credentials)
./scripts/claude-as-docker.sh --oauth| Variable | Description |
|---|---|
ANTHROPIC_API_KEY |
API key for Claude authentication |
CLAUDE_PLUGINS |
Comma-separated plugin repos (owner/repo or full URLs) |
CLAUDE_MARKETPLACES |
Comma-separated marketplace repos |
CLAUDE_REFRESH_PLUGINS |
Set to false to skip plugin updates (default: true) |
# Run with a prompt
./scripts/claude-as-docker.sh -- -p "Help me refactor this code"
# Install additional plugins
CLAUDE_PLUGINS="myorg/my-plugin,other/plugin" ./scripts/claude-as-docker.sh
# Use multiple marketplaces
CLAUDE_MARKETPLACES="grandcamel/Assistant-Skills,company/internal-skills" \
./scripts/claude-as-docker.sh
# Skip plugin updates for faster startup
./scripts/claude-as-docker.sh --no-refresh
# Start a shell for debugging
./scripts/claude-as-docker.sh --shell
# Pull latest image before running
./scripts/claude-as-docker.sh --pull# Build the image
docker build -t assistant-skills -f docker/runtime/Dockerfile .
# Run with custom image
./scripts/claude-as-docker.sh --image assistant-skillsContributions welcome!
# Clone the repository
git clone https://github.com/grandcamel/Assistant-Skills.git
cd Assistant-Skills
# Install dependencies and run tests
pip install -r requirements.txt
pytest skills/*/tests/ -vMIT License β see LICENSE for details.
Stop writing boilerplate. Start building skills.
Built for Claude Code by developers who got tired of reinventing the wheel.