# Add Emacs

Add Emacs as a channel.

- Repository: https://github.com/nanocoai/nanoclaw (31069 stars)
- Category: Engineering
- License: MIT
- Last updated: 2026-10-30
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add nanocoai/nanoclaw --skill add-emacs -g -a claude-code -y`
Codex: `npx skills add nanocoai/nanoclaw --skill add-emacs -g -a codex -y`
Cursor: `npx skills add nanocoai/nanoclaw --skill add-emacs -g -a cursor -y`
Gemini CLI: `npx skills add nanocoai/nanoclaw --skill add-emacs -g -a gemini-cli -y`

## Description

Add Emacs as a channel. Opens an interactive chat buffer and org-mode integration so you can talk to NanoClaw from within Emacs (Doom, Spacemacs, or vanilla). Local HTTP bridge, no bot token or external service needed.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Add Emacs Channel

Adds Emacs support via a local HTTP bridge. Works with Doom Emacs, Spacemacs, and vanilla Emacs 27.1+.

## What you can do with this

- **Ask while coding**, open the chat buffer (`C-c n c` / `SPC N c`), ask about a function or error without leaving Emacs
- **Code review**, select a region and send it with `nanoclaw-org-send`; the response appears as a child heading inline in your org file
- **Meeting notes**, send an org agenda entry; get a summary or action item list back as a child node
- **Draft writing**, send org prose; receive revisions or continuations in place
- **Research capture**, ask a question directly in your org notes; the answer lands exactly where you need it

## Install

NanoClaw doesn't ship channels in trunk. This skill copies the Emacs adapter and the Lisp client in from the `channels` branch. Native HTTP bridge, no Chat SDK, no adapter package.

### 1. Copy the adapter and Lisp client

Fetch the `channels` branch from the configured remote that carries it, then
overwrite the skill-owned files with the canonical registry copies:

```nc:copy from-branch:channels
src/channels/emacs.ts
src/channels/emacs.test.ts
src/channels/emacs-registration.test.ts
emacs/nanoclaw.el
```

### 2. Append the self-registration import

Append to `src/channels/index.ts` (skip if the line is already present):

```nc:append to:src/channels/index.ts
import './emacs.js';
```

### 3. Build and validate

```nc:run effect:build
pnpm run build
```
```nc:run effect:test
pnpm exec vitest run src/channels/emacs-registration.test.ts
```

The rest: https://github.com/nanocoai/nanoclaw/blob/HEAD/.claude/skills/add-emacs/SKILL.md
