From nanotars-github
Configures GitHub API access for NanoTars agents to monitor repos, check PRs, issues, commits, and CI status. Guides PAT setup, plugin config for groups/channels, and verification.
npx claudepluginhub terrifiedbug/nanotars-skills --plugin nanotars-githubThis skill uses the workspace's default tool permissions.
Configures GitHub API access for agent containers, enabling repo monitoring, PR/issue tracking, and CI status checks.
Provides copy-paste instructions for GitHub CLI (gh) installation, authentication, and commands in Claude Code environment, covering repo ops, PRs, issues, and API usage to avoid common errors.
Adds n8n workflow automation integration to NanoTars agents, enabling webhook-triggered monitoring workflows to avoid token-intensive polling. Guides n8n MCP server setup, API key config, and env variables.
Configures Notion API access for NanoTars agents to read and update pages and databases for project management, notes, and tracking. Guides integration setup including token verification and plugin config.
Share bugs, ideas, or general feedback.
Configures GitHub API access for agent containers, enabling repo monitoring, PR/issue tracking, and CI status checks.
Before installing, verify NanoTars is set up:
[ -d node_modules ] && echo "DEPS: ok" || echo "DEPS: missing"
docker image inspect nanoclaw-agent:latest &>/dev/null && echo "IMAGE: ok" || echo "IMAGE: not built"
if grep -q "ANTHROPIC_API_KEY\|CLAUDE_CODE_OAUTH_TOKEN" .env 2>/dev/null || [ -f "$HOME/.claude/.credentials.json" ]; then echo "AUTH: ok"; else echo "AUTH: missing"; fi
If any check fails, tell the user to run /nanotars-setup first and stop.
Create a fine-grained Personal Access Token:
Add to .env:
echo 'GH_TOKEN=YOUR_TOKEN_HERE' >> .env
Plugin Configuration -- Ask the user which groups should have access to GitHub:
mainIf the user wants to restrict access, update plugins/github/plugin.json after copying (step 4) to set "groups" to the list of group folder names:
"groups": ["main"]
If all groups (or the user doesn't care), leave as "groups": ["*"].
Restricting access means only those groups' agents will have GitHub tools. Other groups won't see the GitHub API or credentials.
Also ask about channel types. If the user wants this plugin available on all channel types (WhatsApp, Discord, etc.), leave "channels": ["*"]. To restrict, set "channels" to specific types (e.g., ["whatsapp"]). Most users will want the default.
Copy plugin files:
cp -r ${CLAUDE_PLUGIN_ROOT}/files/ plugins/github/
Rebuild and restart:
npm run build
nanotars restart # or launchctl on macOS
Test the token:
source .env
curl -s -H "Authorization: Bearer $GH_TOKEN" https://api.github.com/user | python3 -c "
import sys, json
r = json.load(sys.stdin)
if 'login' in r:
print(f'OK - {r[\"login\"]}')
else:
print(f'FAILED - {r}')
"
If this plugin is already installed and you want different credentials for a specific group (e.g., a work account for one group, personal for another):
Check which groups exist:
ls -d groups/*/
Ask the user which group should get separate credentials.
Collect the new GitHub token for that group.
Write to the group's .env file (creates if needed):
echo 'GH_TOKEN=github_pat_...' >> groups/{folder}/.env
These values override the global .env for that group's containers only.
Restart NanoTars:
nanotars restart
rm -rf plugins/github/
GH_TOKEN from .env