Slack Browser Automation
vercel-labs/agent-browser
Drives the Slack web app with the agent-browser CLI to check unread channels, search, read channel details and extract information, with screenshots as evidence.
Connects NanoClaw to Google Chat through the Chat SDK bridge, with Google Cloud Console setup steps for the app credentials.
$ npx skills add nanocoai/nanoclaw --skill add-gchat -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install nanocoai/nanoclaw add-gchat --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/nanocoai/nanoclaw.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/add-gchat .claude/skills/add-gchat && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "add-gchat" agent skill from https://github.com/nanocoai/nanoclaw/tree/main/.claude/skills/add-gchat into .claude/skills/add-gchat/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "add-gchat", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/nanocoai/nanoclaw/tree/main/.claude/skills/add-gchatType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add nanocoai/nanoclaw --skill add-gchat -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install nanocoai/nanoclaw add-gchat --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/nanocoai/nanoclaw.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/add-gchat .agents/skills/add-gchat && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "add-gchat" agent skill from https://github.com/nanocoai/nanoclaw/tree/main/.claude/skills/add-gchat into .agents/skills/add-gchat/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "add-gchat", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add nanocoai/nanoclaw --skill add-gchat -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install nanocoai/nanoclaw add-gchat --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/nanocoai/nanoclaw.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/add-gchat .cursor/skills/add-gchat && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "add-gchat" agent skill from https://github.com/nanocoai/nanoclaw/tree/main/.claude/skills/add-gchat into .cursor/skills/add-gchat/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "add-gchat", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/nanocoai/nanoclaw.git --path .claude/skills/add-gchat--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add nanocoai/nanoclaw --skill add-gchat -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install nanocoai/nanoclaw add-gchat --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/nanocoai/nanoclaw.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/add-gchat .gemini/skills/add-gchat && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "add-gchat" agent skill from https://github.com/nanocoai/nanoclaw/tree/main/.claude/skills/add-gchat into .gemini/skills/add-gchat/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "add-gchat", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install nanocoai/nanoclaw add-gchatInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add nanocoai/nanoclaw --skill add-gchat -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/nanocoai/nanoclaw.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/add-gchat .github/skills/add-gchat && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "add-gchat" agent skill from https://github.com/nanocoai/nanoclaw/tree/main/.claude/skills/add-gchat into .github/skills/add-gchat/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "add-gchat", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add nanocoai/nanoclaw --skill add-gchat -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install nanocoai/nanoclaw add-gchat --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/nanocoai/nanoclaw.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/add-gchat .opencode/skills/add-gchat && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "add-gchat" agent skill from https://github.com/nanocoai/nanoclaw/tree/main/.claude/skills/add-gchat into .opencode/skills/add-gchat/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "add-gchat", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
add-gchatConnects NanoClaw to Google Chat through the Chat SDK bridge, with Google Cloud Console setup steps for the app credentials.
Google Chat joins NanoClaw through the Chat SDK bridge, using an adapter copied from the `channels` branch. The mechanical part is four repeatable steps: copy the adapter and test into `src/channels/`, append the import to the channel barrel, install `@chat-adapter/gchat` at a pinned version, then build and run the registration test, which asserts that `gchat` appears in the registry.
Credentials are a human step in the Google Cloud Console: create or choose a project, enable the Google Chat API and fill in the API's Configuration page, starting with an app name and description, plus further settings listed in the skill. Until that is done the adapter compiles and registers but cannot receive a message. Delivery to a real Google Chat space is verified by hand.
4 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 66f0823. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
ngrokpnpmFrom the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
console.cloud.google.comFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
GCHAT_CREDENTIALSFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Google Chat Channel for NanoClaw loads about 1.5k tokens when it runs. Until then it costs about 15 tokens; SKILL.md has 807 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
ed `ncl` or the OneCLI vault instead of `.env` by swapping only theconsumer. Here it goes to `.env` (set-if-absent — a value you've already fillednt JSON collapsed to one line — inspect `.env` and confirm it still contains `"type":"service_account"`, `"private_key"`service so it picks up the adapter and `.env`, then watch `logs/nanoclaw.log` for the inbound webhook hit.Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from nanocoai/nanoclaw at commit 66f0823, republished under its MIT licence (© nanocoai). 807 words, ~1,525 tokens.
.claude/skills/add-gchat/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.Adds Google Chat support via the Chat SDK bridge. NanoClaw doesn't ship channels
in trunk — this skill copies the Google Chat adapter in from the channels
branch.
The mechanical steps under Apply carry nc: directive fences: an agent
reads the prose and applies them, and a parser can apply them deterministically
from the same document. Every directive is idempotent, so the whole skill is
safe to re-run; anything a parser can't apply falls back to the prose beside it.
Fetch the channels branch and copy the Google Chat adapter and its
registration test into src/channels/ (overwrite — the branch is canonical):
src/channels/gchat.ts
src/channels/gchat-registration.test.tsAppend the self-registration import to the channel barrel (skipped if the line is already present). This one line is the skill's only reach-in into core:
import './gchat.js';Pinned to an exact version — the supply-chain policy rejects ranges and latest:
@chat-adapter/gchat@4.29.0Build first: it guards the typed createChatSdkBridge(...) core call and proves
the dependency is installed. Then run the one integration test.
pnpm run buildpnpm exec vitest run src/channels/gchat-registration.test.tsgchat-registration.test.ts imports the real channel barrel and asserts the
registry contains gchat. It goes red if the import line is deleted or drifts,
if the barrel fails to evaluate, or if @chat-adapter/gchat isn't installed (the
import throws) — so it also covers the dependency from step 3. End-to-end
delivery against a real Google Chat space is verified manually once the service
runs — see Credentials and Next Steps.
Google Cloud setup is human and interactive — these steps are prose, not directives (no parser can click through the Google Cloud Console). A recipe rebuild produces a compiling, registered adapter that cannot receive a message until they're done.
- Go to Google Cloud Console
- Create or select a project
- Enable the Google Chat API
- Go to Google Chat API > Configuration:
- App name and description
- Connection settings: select HTTP endpoint URL and set to
https://your-domain/webhook/gchat- Create a Service Account:
- Go to IAM & Admin > Service Accounts > Create Service Account
- Grant the Chat Bot role
- Create a JSON key and download it
Capture the service account JSON, then write it. prompt only asks and binds
the answer to a name; a separate directive consumes it — so the same prompt
could feed ncl or the OneCLI vault instead of .env by swapping only the
consumer. Here it goes to .env (set-if-absent — a value you've already filled
in is never overwritten) as a single-line string:
Paste the service account JSON as a single line — the key file you downloaded, e.g. `{"type":"service_account","project_id":"...","private_key":"...","client_email":"..."}`.GCHAT_CREDENTIALS={{gchat_credentials}}The Chat SDK bridge automatically starts a shared webhook server on port 3000
(WEBHOOK_PORT to change it), handling /webhook/gchat. This port must be
publicly reachable for Google Chat to deliver events — it's the HTTP endpoint
URL you set in the Connection settings above. Running locally, expose it with
ngrok (ngrok http 3000), a Cloudflare Tunnel, or a reverse proxy on a VPS.
If you're in the middle of /setup, return to the setup flow now. Otherwise run
/manage-channels to wire this channel to an agent group.
gchat/space/ (e.g. spaces/AAAA...). Or use the Google Chat API to list spaces.The adapter starts, then errors about credentials. GCHAT_CREDENTIALS must be the entire service account JSON collapsed to one line — inspect .env and confirm it still contains "type":"service_account", "private_key", and "client_email". A truncated paste (shells often mangle the multi-line private key) is the usual cause; download a fresh JSON key under IAM & Admin → Service Accounts → Keys and re-paste it as a single line.
Messages sent in the space never reach the agent. Google Chat delivers only to the HTTP endpoint URL set under Google Chat API → Configuration, and that URL must be publicly reachable at /webhook/gchat (shared webhook server, port 3000). Tunnel hostnames (ngrok free tier) change on restart — make sure the Configuration URL matches the tunnel that's actually up.
The app doesn't appear when adding it to a space. Check the Chat API Configuration page: the app status must be live and its visibility must include your domain or user, and you must be adding it from the same Google Workspace the Cloud project belongs to.
Everything configured but still silent. Run pnpm exec vitest run src/channels/gchat-registration.test.ts — red means the barrel import or the @chat-adapter/gchat install drifted, so re-run the Apply steps. If green, restart the service so it picks up the adapter and .env, then watch logs/nanoclaw.log for the inbound webhook hit.
© nanocoai, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 2 other files in .claude/skills/add-gchat of nanocoai/nanoclaw.
Open the folder on GitHubat commit 66f0823
Google Chat Channel for NanoClaw next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Google Chat Channel for NanoClaw this skillnanocoai/nanoclaw | 31k | — | ~1.5k | Automated safety check: Notes | MIT | |
| Slack Browser Automationvercel-labs/agent-browser | 44k | 1 repos | ~2.1k | Automated safety check: Pass | Apache-2.0 | |
| Feishu Docopenclaw/openclaw | 392k | — | ~516 | Automated safety check: Pass | MIT | |
| Gmail Inbox Watchergoogleworkspace/cli | 31k | 1 repos | ~476 | Automated safety check: Pass | Apache-2.0 | |
| She Love Me863401402/she-love-me | 925 | 1 repos | ~1.3k | Automated safety check: Pass | MIT | |
| Claude To Imop7418/Claude-to-IM-skill | 2.9k | — | ~3.4k | Automated safety check: Notes | MIT |
vercel-labs/agent-browser
Drives the Slack web app with the agent-browser CLI to check unread channels, search, read channel details and extract information, with screenshots as evidence.
openclaw/openclaw
Feishu document read/write workflows. An agent skill from openclaw/openclaw.
googleworkspace/cli
Streams new Gmail messages as NDJSON from the gws command line tool using Google Pub/Sub, with label filters, batch settings and optional per-message files.
863401402/she-love-me
Acquire, import, and analyze WeChat or QQ chat histories, including installing supported exporters, guiding required login or contact selection, converting exports, assessing relationship dynamics…
op7418/Claude-to-IM-skill
Bridge THIS Claude Code or Codex session to Telegram, Discord, Feishu/Lark, QQ, or WeChat so the user can chat with Claude from their phone.
Jesseovo/last30days-skill-cn
Research what Chinese internet users actually said in the last 30 days across Weibo, Xiaohongshu (RED), Bilibili, Zhihu, Douyin, WeChat public accounts, Baidu and Toutiao: engagement-weighted…
nanocoai/nanoclaw
Installs or refreshes Iron Proxy and its Iron Control web console for NanoClaw, with a local Docker setup, database, credentials and a human approval bridge.
nanocoai/nanoclaw
Installs or refreshes OneCLI as the gateway provider for NanoClaw, copying the adapter files, registering the provider and running the setup script.
nanocoai/nanoclaw
Drives a web browser from the shell with the agent-browser CLI: open pages, read an element snapshot, click and fill by reference, grab text and screenshots.
nanocoai/nanoclaw
Guides a conversational migration from an OpenClaw install to NanoClaw v2, carrying over identity, channel credentials, scheduled tasks and workspace files.
nanocoai/nanoclaw
Wires up an additional phone number onto an already-installed Dial channel, so one NanoClaw install answers SMS and AI voice calls on more than one line.
nanocoai/nanoclaw
Installs the `dial` CLI and a credential in NanoClaw agent containers so chosen agents can send SMS, place AI voice calls and receive verification codes.
Works with
Categories
Connects NanoClaw to Google Chat through the Chat SDK bridge, with Google Cloud Console setup steps for the app credentials. Google Chat joins NanoClaw through the Chat SDK bridge, using an adapter copied from the `channels` branch. The mechanical part is four repeatable steps: copy the adapter and test into `src/channels/`, append the import to the channel barrel, install `@chat-adapter/gchat` at a pinned version, then build and run the registration test, which asserts that `gchat` appears in the registry.
Google Chat Channel for NanoClaw fits situations like: letting a NanoClaw agent respond in a Google Chat space; setting up a Google Chat app in Google Cloud for an agent; re-running the adapter install after a NanoClaw update.
Run `npx skills add nanocoai/nanoclaw --skill add-gchat -a claude-code`. Or copy the skill folder (.claude/skills/add-gchat in nanocoai/nanoclaw) into .claude/skills/add-gchat in your project. Claude Code loads it when a task matches its description.
Run `npx skills add nanocoai/nanoclaw --skill add-gchat -a codex`. Or copy the skill folder (.claude/skills/add-gchat in nanocoai/nanoclaw) into .agents/skills/add-gchat in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add nanocoai/nanoclaw --skill add-gchat -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/add-gchat, .gemini/skills/add-gchat, .github/skills/add-gchat and .opencode/skills/add-gchat in your project.
Going by SKILL.md and its folder, Google Chat Channel for NanoClaw needs the command-line tools its instructions call (ngrok and pnpm) and credentials named GCHAT_CREDENTIALS. Our summary lists: A NanoClaw installation with pnpm; A Google Cloud project with the Google Chat API enabled.
SKILL.md names 1 domain. As links in the text: console.cloud.google.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Google Chat Channel for NanoClaw is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.5k tokens (SKILL.md is roughly 6.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Google Chat Channel for NanoClaw: Slack Browser Automation (vercel-labs/agent-browser, 44k stars), Feishu Doc (openclaw/openclaw, 392k stars), Gmail Inbox Watcher (googleworkspace/cli, 31k stars) and She Love Me (863401402/she-love-me, 925 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
nanocoai (a GitHub organization) maintains it in nanocoai/nanoclaw, which has 30,902 GitHub stars. The repository holds 59 skills in this directory. The repository was last updated on October 6, 2026.
Source: nanocoai/nanoclaw on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.