agentish
v0.2.0
Published
A fast terminal coding agent with plugins, MCP, and Claude Code compatibility
Maintainers
Readme
ish
ish is a terminal coding agent - fast, interactive, and built for real project work.
Install the npm package agentish, run ish, and get an agent that reads your repo, edits files, runs commands, resumes sessions, and loads plugins.
npm install -g agentish
ishOn first run, ish prompts for your API key automatically. You can also set ISH_API_KEY in your shell.
Why ish
- Terminal-native - multiline input, paste chips, image paste, slash commands, themes, session resume
- Agentic tools - read, search, edit, write, and run commands with policy controls
- Plan mode - toggle a planning pass before execution with
/planor Shift+Tab - Plugin compatible - loads Claude Code plugin installs from
~/.claude/plugins/ - MCP bridge - lazy-loaded MCP servers, no startup hang
- Fast boot -
ish versionexits instantly; heavy work loads only when needed
Quick start
# Install
npm install -g agentish
# Save your API key (only needed if ISH_API_KEY is not set - first run prompts automatically)
ish
# Check for updates
ish update
# One-shot prompt
ish "find unused exports in src/"Get an API key from ish.chat or set ISH_API_KEY for the current shell.
Commands
| Command | Description |
|---|---|
| ish | Start an interactive session |
| ish "<prompt>" | Run one prompt and exit |
| ish doctor | Check install, tools, API key, plugins, and MCP |
| ish update | Check npm for updates (npm update -g agentish) |
| ish logout | Remove stored credentials |
| ish models | List available models |
| ish themes | Preview color themes |
| ish version | Print version |
| ish help | Show CLI help |
Flags
| Flag | Description |
|---|---|
| --model <id> | Model to use (default: claude-sonnet-4.6) |
| --theme <name> | Color theme |
| --api-key <key> | API key for this run only |
| --no-plugins | Skip plugin and MCP loading |
| --plugin-dir <path> | Load a local plugin directory (dev/testing) |
Interactive slash commands
Type / in the prompt for the default menu:
/model /theme /policy /plan /compact /resume /rename /rewind
/clear /shortcuts /help /exit /plugins /plugin /reload-plugins /mcpStart typing to filter - e.g. /c reveals plugin commands like /caveman and /caveman:caveman.
| Command | Description |
|---|---|
| /policy [mode] | Tool policy: ask, accept-edits, read-only |
| /plan [on\|off] | Toggle planning mode before execution (also Shift+Tab) |
| /compact | Summarize context at a task boundary |
| /resume | Pick a saved session |
| /rewind [n] | Drop recent turns |
| /shortcuts | Show keyboard shortcuts |
| /plugins | Installed plugins and skills |
| /plugin | Plugin actions (browse, install, info, health) |
| /plugin install name@marketplace | Install a plugin |
| /plugin uninstall name@marketplace | Remove an installed plugin |
| /plugin marketplace add owner/repo | Add a Claude plugin marketplace |
| /reload-plugins | Reload the plugin harness |
Keyboard shortcuts
Run /shortcuts inside ish for the platform-specific list. Common bindings:
Entersends the message.Option+Enteron macOS, orAlt+Enteron Windows/Linux, inserts a newline.Cmd+Von macOS, orCtrl+Von Windows/Linux, pastes text. Large multiline pastes collapse to chips like[#1 +100 lines].Ctrl+Von macOS, orAlt+Von Windows/Linux, pastes a clipboard image as[Image 1].Shift+Tabtoggles plan mode.↑/↓browse prompt history.Ctrl+Cclears the current input; press twice on an empty input to exit.
Plan mode
Use /plan or Shift+Tab to toggle plan mode for the current session. When active, ish asks the agent to plan first and maintain plan.md.
Plan mode is also enforced by the native tools layer:
- Reads and searches are allowed.
- Writing/editing
plan.mdis allowed. - Source-file writes and shell commands are blocked until you turn plan mode off and approve execution.
Plan mode is session-local: new ish sessions start with plan mode off.
Plugins
ish reads the same install registry Claude Code uses:
~/.claude/plugins/installed_plugins.json~/.claude/settings.json(enabledPlugins)
Install a plugin in Claude Code, enable it, and ish picks it up automatically. You can also add Claude-compatible marketplaces directly in ish:
/plugin marketplace add anthropics/claude-plugins-official
/plugin browse
/plugin install agent-sdk-dev@claude-plugins-officialSkills are exposed as namespaced slash commands:
/caveman:caveman
/claude-mem:make-planPlugin MCP servers use plugin-scoped IDs (e.g. caveman/local-server), not generic claude_* prefixes.
For local development:
ish --plugin-dir ./my-pluginConfiguration
| Variable | Description |
|---|---|
| ISH_API_KEY | API key for the current session |
| ISH_MODEL | Default model |
| ISH_BASE_URL | API base URL (default: https://api.ish.chat/v1) |
| ISH_HOME | Config directory (default: ~/.ish) |
| ISH_THEME | Default color theme |
Credentials are stored at ~/.ish/credentials.json. Sessions are saved under ~/.ish/sessions/.
Development
This repo is an npm workspace monorepo:
apps/cli/ # ish CLI (published as agentish)
packages/ui/ # Terminal UI (agentish-ui)git clone https://github.com/junioralive/ish-cli.git
cd ish-cli
npm install
npm run build
npm test
# Run from source
npm run ishPublish to npm
The CLI is published as agentish. The binary is still ish.
npm run build
npm run publish:npmThis publishes agentish-ui first, then agentish. You need to be logged in to npm.
License
MIT - see LICENSE.
