Claude Skill MartBrowse skillsWhat is a Skill?
Back to list

Add GitHub Channel (NanoClaw)

Installs and wires the NanoClaw GitHub channel adapter so your agent can talk inside PR and issue comment threads.

AutomationAdvanced30,47112,865AI score 7/10Last updated: Aug 9, 2026

What it does

This skill bolts a GitHub channel adapter onto a NanoClaw project so each PR or issue comment thread becomes its own agent conversation. It walks through:

  • Copying src/channels/github.ts and its registration test from the channels branch
  • Appending a single self-registration import to src/channels/index.ts
  • Installing @chat-adapter/github pinned to an exact version (ranges and latest are rejected by policy)
  • Running pnpm run build plus a vitest that proves github is in the channel registry
  • Prompting for the bot PAT, webhook secret and bot username, then writing them to .env only if unset
  • Creating messaging groups and wirings with ncl, choosing unknown_sender_policy based on private vs public repos

Every mechanical step lives inside an nc: directive fence, so a human or a parser can apply it identically, and the whole skill is idempotent.

Who it's for

  • Developers self-hosting NanoClaw who want to summon the agent from GitHub
  • Teams wanting a bot that lives in PR review threads
  • Operators who need one document covering .env, webhooks, wiring and service restart

Heads-up: it is meaningless outside a NanoClaw checkout and assumes the ncl CLI plus a running host service — not beginner territory.

Examples

  1. PR review helper: on a private repo with unknown_sender_policy: 'public', a teammate writes @my-org-bot summarize this diff and the agent replies in the same thread.
  2. Public repo triage: switch to strict and register trusted maintainers with ncl users create --id "github:12345" --kind github so strangers can't burn agent resources.
  3. Health check: when the channel goes silent, pnpm exec vitest run src/channels/github-registration.test.ts instantly tells you whether the barrel import or the adapter dependency drifted.

· · · Install guide · · ·

Install in the Claude app (no terminal)
  1. Download the ZIP with the button below.
  2. In Claude, open Settings → Capabilities and turn on 'Code execution and file creation'. (one time)
  3. Go to Customize → Skills → + → 'Upload a skill' and upload the ZIP.
Download ZIP
Install in Claude Code

Let Claude do it — paste this into Claude Code

Install the skill I found on Claude Skill Mart.
Copy the .claude/skills/add-github folder from the GitHub repo nanocoai/nanoclaw into my ~/.claude/skills/add-github/.
When it's done, tell me in one line what this skill can do.

Install with a command instead

git clone https://github.com/nanocoai/nanoclaw.git && mkdir -p ~/.claude/skills && cp -r nanoclaw/.claude/skills/add-github ~/.claude/skills/

This is a third-party skill. Check the source repository before installing.

  1. Clone the repository: git clone https://github.com/nanocoai/nanoclaw.git
  2. Copy the skill into your personal skills folder: mkdir -p ~/.claude/skills && cp -r nanoclaw/.claude/skills/add-github ~/.claude/skills/ (skip this if you're already working inside the NanoClaw project).
  3. Create a dedicated GitHub bot account and invite it as a write-access collaborator on the repos you want monitored — do not use your personal account.
  4. Logged in as the bot, go to Settings → Developer Settings → Personal Access Tokens and mint a fine-grained token with Pull requests (Read & Write) and Issues (Read & Write) on those repos.
  5. On each repo, add a webhook: payload URL https://your-domain/webhook/github, content type application/json, a secret from openssl rand -hex 20, and subscribe to Issue comments and Pull request review comments.
  6. Open Claude Code from the NanoClaw project root and ask it to "add the GitHub channel", or run it as part of /setup.
  7. Answer the three prompts (PAT, webhook secret, bot username); they are written to .env without overwriting existing values.
  8. Confirm the build and registration test pass, then create the messaging group and wiring via ncl (the host service must be running).
  9. Restart the service (macOS: launchctl kickstart -k ...; Linux: systemctl --user restart ...) and @-mention the bot in a PR comment from a non-bot account to verify end to end.