Contributing

September 18, 2026 · View on GitHub

Thanks for contributing to agent-toolkit.

Public repository

This project is public. By opening a PR you confirm the change does not include secrets, private infrastructure details, or client-confidential material. See docs/PUBLIC_CONTENT_POLICY.md.

Development setup

git clone https://github.com/nanlabs/agent-toolkit.git
cd agent-toolkit
python3 -m pip install pre-commit
pre-commit install

Validation before PR

bash scripts/validate-repo-structure.sh
python3 scripts/validate-manifests.py
python3 scripts/validate-agent-plugins.py
python3 scripts/validate-skill-inventory.py
python3 scripts/validate-public-content.py
python3 scripts/validate-skills.py
python3 scripts/validate-agents.py
python3 scripts/validate-pack-catalog.py
python3 scripts/validate-mcp.py
python3 scripts/gen-surfaces.py --check
python3 scripts/gen-copilot-surfaces.py --check
bash scripts/secret-scan.sh
pre-commit run --all-files

CI on non-draft PRs:

WorkflowJob
validate.ymlStructure, manifests, Agent Plugins, skills, MCP, catalog docs, secret-scan, pre-commit
mega-linter.ymlMegaLinter v10 (cupcake allowlist)
pr-review.ymlDanger JS (TypeScript) under tools/danger/

Danger expects the PR template sections and an issue reference (Fixes #N / Refs #N).

Pull requests

  1. Create a feature branch from main.
  2. Keep PRs focused and linked to a GitHub issue (Fixes #N).
  3. Fill the PR template checklist, including the public-repo section.
  4. New or changed skills/agents also fill the Skill/Agent checklist (duplicates, pack membership, Cloud-safe fallback). See docs/CONTRIBUTION.md.
  5. Prefer squash merges unless maintainers request otherwise.

Propose a skill

Use the Propose skill issue template, then follow skill nanlabs-propose-skill and docs/CONTRIBUTION.md. Maintainers review for security, duplication, quality, and pack membership before merge.

Code owners

See .github/CODEOWNERS.

Documentation

  • Repo docs: docs/ (index: docs/README.md)
  • Packs: docs/PACKS.md · contribution: docs/CONTRIBUTION.md
  • GitHub Wiki source: docs/wiki/ — live wiki: github.com/nanlabs/agent-toolkit/wiki — synced on push to main (see .github/workflows/wiki-sync.yml). Initialize the wiki once on GitHub before the first sync succeeds.
  • Prefer editing docs/wiki/ in PRs rather than the wiki UI.
  • README artwork lives under static/ (NaNLABS dark + orange/gold palette).