stukennedy/honi/claude-skill
Claude Code and agent skill by stukennedy/honi
- community
Checking that the SKILL.md file is still in the repository.
Build AI agents with Honi (honidev) on Cloudflare Workers. Use when creating agents with tools, persistent memory, MCP servers, or multi-agent pipelines. Covers createAgent API, tool() helper, all memory tiers (working/episodic/semantic/graph), multi-agent routing, MCP auth, and all supported model providers.
Install
npx vskill@latest install stukennedy/honi/claude-skillSKILL.md
Honi — AI Agents on Cloudflare Workers
honidev is a TypeScript framework for building persistent AI agents on Cloudflare Workers using Durable Objects. Zero cold starts. Global edge deployment. Layered memory that survives across sessions.
Installation
Minimal Agent
createAgent Config
tool() Helper
The handler receives (params, ctx?). The ctx argument is optional — tools without context still work fine.
HTTP API
Every agent exposes:
| Endpoint | Method | Description | |
|---|---|---|---|
/chat | POST | Send a message, get a response | |
/history | GET | Retrieve conversation history | |
/memory | GET | Inspect current memory context | |
/reset | POST | Clear working memory | |
/mcp | POST | MCP JSON-RPC endpoint |
Thread isolation via header or query param:
Streaming
Returns Server-Sent Events. The client receives data: {"type":"text","text":"..."} chunks.
Memory — Four Tiers
Honi has four memory tiers. Enable only what you need.
wrangler.toml for full memory stack:
Graph memory in tools:
Multi-Agent Orchestration
Route requests to specialised agents at the Worker level:
MCP Server
Every agent exposes /mcp as an MCP JSON-RPC endpoint. Tools are automatically registered.
Connect from Claude Desktop:
Add authentication for remote connections (recommended):
Claude Desktop with auth:
Supported Models
| Prefix | Provider | Example | |
|---|---|---|---|
claude-* | Anthropic | claude-sonnet-4-5 | |
gpt-*, o1, o3 | OpenAI | gpt-4o | |
gemini-* | gemini-2.5-flash-preview | ||
groq/* | Groq | groq/llama-3.3-70b-versatile | |
deepseek-* | DeepSeek | deepseek-chat | |
mistral-* | Mistral | mistral-large-latest | |
grok-* | xAI | grok-2-latest | |
sonar* | Perplexity | sonar-pro | |
together/* | Together AI | together/meta-llama/Llama-3-70b | |
command-* | Cohere | command-r-plus | |
@cf/* | Workers AI | @cf/meta/llama-3.1-8b-instruct |
Workers AI models require an [ai] binding in wrangler.toml — no API key needed. Other providers use their respective API key set via wrangler secret, OR no key at all when routed through AI Gateway with stored keys / Unified Billing (see AI Gateway section).
Environment variable names:
- Anthropic:
ANTHROPIC_API_KEY - OpenAI:
OPENAI_API_KEY - Google:
GOOGLE_AI_API_KEY - Groq:
GROQ_API_KEY - DeepSeek:
DEEPSEEK_API_KEY - Mistral:
MISTRAL_API_KEY - xAI:
XAI_API_KEY - Perplexity:
PERPLEXITY_API_KEY - Together:
TOGETHER_API_KEY - Cohere:
COHERE_API_KEY
AI Gateway
Route all LLM calls through Cloudflare AI Gateway. With BYOK keys stored in the gateway (or Unified Billing), the Worker needs no provider API keys:
With an [ai] binding in wrangler.toml, only gatewayId is required — auth happens through the binding, fully keyless. Gateway routing covers Anthropic, OpenAI, Google, Groq, DeepSeek, Mistral, xAI, Perplexity, and Azure OpenAI. @cf/* models route through the gateway natively.
Observability
Common Patterns
Tool that calls an external API
Tool that writes to D1
Tool that writes to graph memory
Conditional memory based on content
The memory stack is write-through by default. To promote selectively, skip memory config and write to tiers manually in a tool or post-processing step. An evaluator / significance filter is on the roadmap.
Project Layout
Quick Reference
| Task | Code | |
|---|---|---|
| Create agent | createAgent({ name, model, system, tools }) | |
| Define tool | tool(name, desc, schema, handler) | |
| Access env in tool | (params, ctx) => ctx.env.MY_BINDING | |
| Access graph in tool | (params, ctx) => ctx.graph.addNode(...) | |
| Thread isolation | x-thread-id header or ?threadId= query param | |
| View history | GET /history?threadId=xyz | |
| Reset session | POST /reset | |
| Enable episodic | memory: { episodic: { enabled: true, dbBinding: 'DB' } } | |
| Enable semantic | memory: { semantic: { enabled: true, indexBinding: 'VECTORIZE', aiBinding: 'AI' } } | |
| Enable graph | memory: { graph: { enabled: true, binding: 'EDGRAPH', graphId: 'x' } } | |
| MCP auth | mcp: { secretEnvVar: 'MCP_SECRET' } | |
| Stream response | Accept: text/event-stream on POST /chat |
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingclaude-skill/SKILL.md
Popularity
- Repository stars
- 41
- Repository forks
- 1
- Repository npm downloads, 7 days
- 25
- 7-day trend score
- 33
Stars and forks are for the whole GitHub repository, not this skill alone. Downloads are for the repository's npm package. Refreshed 27 Mar 2026, 7 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/stukennedy/honi/claude-skill)