@shuyhere/takotako
v0.0.21
Published
Agent-as-CPU OS: minimal core + pluggable skill arms
Maintainers
Readme
Tako 🐙
Agent-as-CPU OS — minimal core runtime + pluggable skill arms.
Tako is a multi-channel AI agent runtime you can run locally or on a server. It supports CLI, Discord, Telegram, tool execution, memory, sessions, and hot-reloadable skills.
What you get
- Minimal kernel with clear interfaces (provider/channel/tools/memory/hooks)
- Pluggable skills (
SKILL.md+ optionaltools/*) - Multi-channel operation from one runtime (CLI + Discord + Telegram)
- Session persistence + compaction
- Tool profiles (
minimal,coding,full) - Daemon mode with status/restart/tui attach
Install
Prerequisite: install Node.js (>=20) first, and install Bun (>=1.0) if you want to use Bun-based install/dev commands.
Option A — npm (published package)
npm install -g @shuyhere/takotakoOr with Bun:
bun add -g @shuyhere/takotakoThen run:
tako onboard
tako start -d ## preferred: run in background after onboardOption B — install from GitHub source
npm install -g github:Korde-AI/takoOption C — from source
git clone https://github.com/Korde-AI/tako.git
cd tako
npm install
npm run build
npm link
tako onboard
tako start -d ## preferred: run in background after onboardFor detailed setup and platform notes, see docs/INSTALL.md.
Quick usage
tako start # foreground
tako start -d # daemon
tako status # health + runtime info
tako tui # attach TUI to daemon
tako stop # stop daemon
tako restart # restart daemon
tako doctor # health diagnostics
tako models list # list models
tako models auth login --provider anthropicInside chat/CLI, built-in commands include:
/help/status/model/agents/queue/usage
See docs/USAGE.md for full command and workflow docs.
Setting up Discord & Telegram
Tako connects to Discord and Telegram through bot tokens. The tako onboard wizard will walk you through the full setup — you just need a token.
How to get your tokens: → docs/channels.md — step-by-step guide for Discord and Telegram
Once you have your token, run:
tako onboardAnd paste it in when prompted.
Creating Agents
Tako supports multiple specialized agents, each with their own bot identity, workspace, personality, and skills.
How it works
- Each agent gets its own Discord/Telegram bot
- Agents have isolated workspaces (
~/.tako/workspace-<name>/) - Each workspace has
SOUL.md(personality),IDENTITY.md,USER.md, andmemory/ - Agents share the same LLM provider but can use different models
Use case 1 — Code Agent
A dedicated coding assistant that lives in a #code-help Discord channel.
Ask Tako: "Create a new agent called code-agent for coding help"- Fixes bugs and stack traces
- Reviews PRs and code quality
- Helps with repo structure and CI/CD
- Only responds when directly
@mentioned
To give it its own Discord bot, create a second bot at discord.com/developers (see docs/channels.md), then run /setup in Discord and select code-agent.
Use case 2 — Project Manager Agent
A PM agent that tracks tasks, milestones, and project status across sessions.
Ask Tako: "Create a project manager agent"- Remembers your projects and phases across sessions
- Plans sprints, tracks blockers, and summarizes progress
- Lives in a dedicated
#project-managementchannel - Can coordinate work across other agents
Use case 3 — Research Agent
An agent that searches the web, reads papers, and summarizes findings.
Ask Tako: "Create a research agent"- Searches the web and fetches URLs
- Summarizes papers and long documents
- Answers deep questions with cited sources
- Can be restricted to read-only tools via role config
Creating Skills
Skills extend Tako with new capabilities. A skill is a SKILL.md file (instructions for the agent) plus optional custom tools.
Skill structure
skills/my-skill/
├── SKILL.md ← instructions + metadata (required)
└── tools/
└── my-tool.mjs ← custom tool (optional)SKILL.md format
---
name: my-skill
description: What this skill does and when to use it
---
# My Skill
Instructions for the agent go here in plain English.
Tell it what to do, how to do it, and what output to produce.Use case 1 — Daily Standup Skill
Automatically posts a daily standup summary to your Discord channel every morning.
---
name: daily-standup
description: Post a daily standup summary to the team Discord channel every morning
---
# Daily Standup
Every morning at 9am, post a standup to the team channel:
1. What was completed yesterday
2. What's planned for today
3. Any blockers
Format it as a clean Discord message with bullet points.Install it:
mkdir -p ~/.tako/skills/daily-standup
cp skills/daily-standup/SKILL.md ~/.tako/skills/daily-standup/
tako restartUse case 2 — Code Review Skill
Reviews GitHub pull requests when a PR link is shared in chat.
---
name: code-review
description: Review GitHub pull requests for bugs, security issues, and best practices
---
# Code Review
When given a GitHub PR URL:
1. Fetch the diff
2. Review for: correctness, security, performance, readability
3. Provide structured feedback with specific line-level comments
4. Rate the PR: Approve / Request Changes / CommentUse case 3 — Custom Tool Skill
A skill with a custom Node.js tool that calls an external API.
skills/weather/
├── SKILL.md
└── tools/
└── get-weather.mjsSKILL.md:
---
name: weather
description: Get current weather for any city
---
When asked about weather, use the get-weather tool with the city name.
Report temperature, conditions, and a brief forecast.tools/get-weather.mjs:
export const name = 'get-weather';
export const description = 'Get current weather for a city';
export const parameters = {
type: 'object',
properties: {
city: { type: 'string', description: 'City name' }
},
required: ['city']
};
export async function execute({ city }) {
const res = await fetch(`https://wttr.in/${city}?format=j1`);
const data = await res.json();
return { output: JSON.stringify(data.current_condition[0]) };
}See docs/skills.md for the full skills reference.
Recommended setup
For the best day-to-day experience, use Discord and invite your bot to a server. Then run Tako in daemon mode and manage it with slash commands as your live dashboard (/status, /models, /agents, /queue, /usage).
tako onboard
tako start -dConfiguration
Main config path: ~/.tako/tako.json
Bootstrap via:
tako onboardTemplate: tako.example.json
Reference docs: docs/configuration.md
Developer guide
Security notes
- Keep
~/.tako/tako.jsonand tokens private - Use restrictive tool profile in production (
minimal/codingwhere possible) - Restrict bot access using the allowlist — only users you trust can talk to your agents
License
MIT — see LICENSE.
Thanks
Tako is informed by the broader agent tooling ecosystem. Special thanks to projects and communities that explored these patterns early, including OpenClaw and ZeroClaw.
