Configuring Horizon
coollabsio/coolify
A skill your agent uses whenever the user mentions Horizon by name in a Laravel context.
Manage and operate the TinyAGI system itself — agents, teams, settings, queue, tasks, daemon lifecycle, and source code.
$ npx skills add TinyAGI/tinyagi --skill tinyagi-admin -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install TinyAGI/tinyagi tinyagi-admin --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/TinyAGI/tinyagi.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/tinyagi-admin .claude/skills/tinyagi-admin && 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 "tinyagi-admin" agent skill from https://github.com/TinyAGI/tinyagi/tree/main/.agents/skills/tinyagi-admin into .claude/skills/tinyagi-admin/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "tinyagi-admin", 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/TinyAGI/tinyagi/tree/main/.agents/skills/tinyagi-adminType 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 TinyAGI/tinyagi --skill tinyagi-admin -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install TinyAGI/tinyagi tinyagi-admin --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/TinyAGI/tinyagi.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/tinyagi-admin .agents/skills/tinyagi-admin && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "tinyagi-admin" agent skill from https://github.com/TinyAGI/tinyagi/tree/main/.agents/skills/tinyagi-admin into .agents/skills/tinyagi-admin/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "tinyagi-admin", 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 TinyAGI/tinyagi --skill tinyagi-admin -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install TinyAGI/tinyagi tinyagi-admin --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/TinyAGI/tinyagi.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/tinyagi-admin .cursor/skills/tinyagi-admin && 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 "tinyagi-admin" agent skill from https://github.com/TinyAGI/tinyagi/tree/main/.agents/skills/tinyagi-admin into .cursor/skills/tinyagi-admin/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "tinyagi-admin", 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/TinyAGI/tinyagi.git --path .agents/skills/tinyagi-admin--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 TinyAGI/tinyagi --skill tinyagi-admin -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install TinyAGI/tinyagi tinyagi-admin --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/TinyAGI/tinyagi.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/tinyagi-admin .gemini/skills/tinyagi-admin && 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 "tinyagi-admin" agent skill from https://github.com/TinyAGI/tinyagi/tree/main/.agents/skills/tinyagi-admin into .gemini/skills/tinyagi-admin/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "tinyagi-admin", 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 TinyAGI/tinyagi tinyagi-adminInstalls 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 TinyAGI/tinyagi --skill tinyagi-admin -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/TinyAGI/tinyagi.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/tinyagi-admin .github/skills/tinyagi-admin && 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 "tinyagi-admin" agent skill from https://github.com/TinyAGI/tinyagi/tree/main/.agents/skills/tinyagi-admin into .github/skills/tinyagi-admin/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "tinyagi-admin", 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 TinyAGI/tinyagi --skill tinyagi-admin -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install TinyAGI/tinyagi tinyagi-admin --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/TinyAGI/tinyagi.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/tinyagi-admin .opencode/skills/tinyagi-admin && 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 "tinyagi-admin" agent skill from https://github.com/TinyAGI/tinyagi/tree/main/.agents/skills/tinyagi-admin into .opencode/skills/tinyagi-admin/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "tinyagi-admin", 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.
tinyagi-adminManage and operate the TinyAGI system itself — agents, teams, settings, queue, tasks, daemon lifecycle, and source code.
Tinyagi Admin is an agent skill from TinyAGI/tinyagi. Manage and operate the TinyAGI system itself — agents, teams, settings, queue, tasks, daemon lifecycle, and source code. Use when the agent needs to: list/add/remove/update agents or teams, check queue status, view logs, start/stop/restart TinyAGI, change settings (provider, model, channels), send messages to the queue, manage tasks, retry dead-letter messages, view recent responses, modify TinyAGI source code or configuration, or perform any administrative operation on the TinyAGI platform. Triggers: 'manage…
Its SKILL.md is about 2.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including scripts (for example `scripts/tc-api.sh`).
It sits in Backend & APIs. The repository describes itself as: TinyAGI is the agent teams orchestrator for One Person Company. (fka TinyClaw). The licence is MIT.
Read from SKILL.md and the folder at commit 2db3a03. 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.
Ships 1 file in scripts/ (Shell), which the agent can run.
Shell commands in SKILL.md call:
curljqnpmgitFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use curl, npm and git, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Tinyagi Admin loads about 2.5k tokens when it runs. Until then it costs about 174 tokens; SKILL.md has 380 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 found no risky patterns in SKILL.md.
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); the scripts in this folder are not scanned.
The full file from TinyAGI/tinyagi at commit 2db3a03, republished under its MIT licence (© TinyAGI). 380 words, ~2,545 tokens.
.claude/skills/tinyagi-admin/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Operate and manage the TinyAGI multi-agent system. This skill covers both runtime administration (via the REST API) and source code modification.
~/.tinyagi/settings.json — all configuration (agents, teams, channels, models, workspace)tinyagi.db — SQLite queue databasetasks.json — Kanban taskspairing.json — sender allowlistlogs/ — queue, daemon, and channel logschats/ — team chain chat historyevents/ — real-time event filesplugins/ — plugin directorygit rev-parse --show-toplevel or look for tinyagi.sh in parent dirs)settings.json under workspace.path (default: ~/tinyagi-workspace/{agent_id}/)Many tinyagi CLI commands are interactive (prompt for user input). Do NOT run these directly:
tinyagi setup — fully interactive wizardtinyagi agent add — prompts for all fieldstinyagi team add — prompts for all fieldstinyagi agent remove <id> — prompts [y/N]tinyagi team remove <id> — prompts [y/N]tinyagi team remove-agent <t> <a> — may prompt for new leader + [y/N]Instead, use the REST API or direct settings.json edits (see below).
These CLI commands accept all parameters as arguments and do not prompt:
tinyagi start # Start daemon
tinyagi stop # Stop all processes
tinyagi restart # Restart daemon
tinyagi status # Show status
tinyagi logs [queue|discord|telegram|whatsapp|heartbeat|daemon|all]
tinyagi send "<message>" # Send message to default agent
tinyagi send "@agent_id <message>" # Send to specific agent
tinyagi reset <agent_id> [agent_id...] # Reset agent conversations
tinyagi provider anthropic # Switch global provider
tinyagi provider openai --model gpt-5.3-codex
tinyagi model sonnet # Switch global model
tinyagi agent list # List agents
tinyagi agent show <id> # Show agent config
tinyagi agent provider <id> <provider> # Set agent provider
tinyagi agent provider <id> <provider> --model <model>
tinyagi team list # List teams
tinyagi team show <id> # Show team config
tinyagi team add-agent <team_id> <agent_id> # Add agent to team (no prompts)
tinyagi channel start <channel> # Start a channel
tinyagi channel stop <channel> # Stop a channel
tinyagi channel restart <channel> # Restart a channel
tinyagi channel reset <channel> # Reset channel auth
tinyagi pairing list # Show all pairings
tinyagi pairing pending # Show pending
tinyagi pairing approved # Show approved
tinyagi pairing approve <code> # Approve a sender
tinyagi pairing unpair <channel> <sender_id>The API server runs on http://localhost:3777 (configurable via TINYAGI_API_PORT). The API server is available when TinyAGI is running.
# List agents
curl -s http://localhost:3777/api/agents | jq
# Create or update agent (non-interactive, auto-provisions workspace)
curl -s -X PUT http://localhost:3777/api/agents/coder \
-H 'Content-Type: application/json' \
-d '{"name":"Coder","provider":"anthropic","model":"sonnet"}'
# Create agent with a system prompt (written to AGENTS.md in workspace on provisioning)
curl -s -X PUT http://localhost:3777/api/agents/coder \
-H 'Content-Type: application/json' \
-d '{"name":"Coder","provider":"anthropic","model":"sonnet","system_prompt":"You are a senior engineer. Always write tests."}'
# Optional fields: working_directory, system_prompt, prompt_file
# Delete agent
curl -s -X DELETE http://localhost:3777/api/agents/coder# List teams
curl -s http://localhost:3777/api/teams | jq
# Create or update team
curl -s -X PUT http://localhost:3777/api/teams/dev \
-H 'Content-Type: application/json' \
-d '{"name":"Dev Team","agents":["coder","reviewer"],"leader_agent":"coder"}'
# Delete team
curl -s -X DELETE http://localhost:3777/api/teams/dev# Get full settings
curl -s http://localhost:3777/api/settings | jq
# Update settings (shallow merge)
curl -s -X PUT http://localhost:3777/api/settings \
-H 'Content-Type: application/json' \
-d '{"monitoring":{"heartbeat_interval":1800}}'# Start a channel
curl -s -X POST http://localhost:3777/api/services/channel/telegram/start
# Stop a channel
curl -s -X POST http://localhost:3777/api/services/channel/telegram/stop
# Restart a channel
curl -s -X POST http://localhost:3777/api/services/channel/telegram/restart
# Start all enabled channels
curl -s -X POST http://localhost:3777/api/services/apply
# Restart the entire process (exit code 75 triggers restart loop in Docker)
curl -s -X POST http://localhost:3777/api/services/restart# Send message to queue (processed by agent)
curl -s -X POST http://localhost:3777/api/message \
-H 'Content-Type: application/json' \
-d '{"message":"@coder fix the login bug","sender":"Admin","channel":"api"}'# Queue status
curl -s http://localhost:3777/api/queue/status | jq
# Recent responses
curl -s http://localhost:3777/api/responses?limit=10 | jq
# Dead-letter messages
curl -s http://localhost:3777/api/queue/dead | jq
# Retry a dead message
curl -s -X POST http://localhost:3777/api/queue/dead/123/retry
# Delete a dead message
curl -s -X DELETE http://localhost:3777/api/queue/dead/123# List tasks
curl -s http://localhost:3777/api/tasks | jq
# Create task
curl -s -X POST http://localhost:3777/api/tasks \
-H 'Content-Type: application/json' \
-d '{"title":"Fix auth bug","description":"Login fails on mobile","status":"backlog","assignee":"coder","assigneeType":"agent"}'
# Update task
curl -s -X PUT http://localhost:3777/api/tasks/TASK_ID \
-H 'Content-Type: application/json' \
-d '{"status":"in-progress"}'
# Delete task
curl -s -X DELETE http://localhost:3777/api/tasks/TASK_ID# Recent queue logs
curl -s http://localhost:3777/api/logs?limit=50 | jqWhen the API server is not running, edit ~/.tinyagi/settings.json directly. Use jq for safe atomic edits:
SETTINGS="$HOME/.tinyagi/settings.json"
# Add an agent
jq --arg id "analyst" --argjson agent '{"name":"Analyst","provider":"anthropic","model":"sonnet","working_directory":"'$HOME'/tinyagi-workspace/analyst"}' \
'.agents[$id] = $agent' "$SETTINGS" > "$SETTINGS.tmp" && mv "$SETTINGS.tmp" "$SETTINGS"
# Remove an agent
jq 'del(.agents["analyst"])' "$SETTINGS" > "$SETTINGS.tmp" && mv "$SETTINGS.tmp" "$SETTINGS"
# Add a team
jq --arg id "research" --argjson team '{"name":"Research Team","agents":["analyst","writer"],"leader_agent":"analyst"}' \
'.teams //= {} | .teams[$id] = $team' "$SETTINGS" > "$SETTINGS.tmp" && mv "$SETTINGS.tmp" "$SETTINGS"After editing settings.json, run tinyagi restart to pick up changes.
When modifying TinyAGI's own code (features, bug fixes, new routes, etc.):
packages/core/src/ — shared utilities (config, db, logging, types, plugins, agent invocation)packages/server/src/ — API server (Hono framework)packages/server/src/routes/ — route handlers (agents, teams, settings, queue, tasks, messages, logs, services)packages/main/src/ — entry point, queue processor, channel/heartbeat lifecyclepackages/cli/src/ — CLI modules (daemon, channel, install, logs, agent, team, provider, etc.)packages/cli/bin/tinyagi.mjs — thin CLI dispatcher (delegates to compiled modules in dist/)packages/teams/src/ — team orchestrationpackages/visualizer/src/ — TUI dashboards (team visualizer, chatroom viewer).agents/skills/ — skill definitions (copied to agent workspaces on provision)tinyoffice/ — Next.js appDockerfile, docker-entrypoint.sh, docker-compose.ymlAfter modifying TypeScript source, rebuild:
cd <tinyagi-repo> && npm run buildThen restart the daemon to load changes:
tinyagi restart# 1. Create agent via API
curl -s -X PUT http://localhost:3777/api/agents/reviewer \
-H 'Content-Type: application/json' \
-d '{"name":"Code Reviewer","provider":"anthropic","model":"sonnet"}'
# 2. Add to existing team (non-interactive CLI)
tinyagi team add-agent dev reviewertinyagi status
curl -s http://localhost:3777/api/queue/status | jq
curl -s http://localhost:3777/api/queue/dead | jq
tinyagi logs queuecurl -s -X POST http://localhost:3777/api/tasks \
-H 'Content-Type: application/json' \
-d '{"title":"Review PR #42","status":"backlog","assignee":"reviewer","assigneeType":"agent"}'© TinyAGI, 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 1 other file (scripts) in .agents/skills/tinyagi-admin of TinyAGI/tinyagi.
Open the folder on GitHubat commit 2db3a03
Tinyagi Admin 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 |
|---|---|---|---|---|---|---|
| Tinyagi Admin this skillTinyAGI/tinyagi | 3.6k | — | ~2.5k | Automated safety check: Pass | MIT | |
| Configuring Horizoncoollabsio/coolify | 63k | 4 repos | ~898 | Automated safety check: Pass | MIT | |
| Nestjs Best Practicesrolling-scopes/rsschool-app | 10k | 6 repos | ~1.2k | Automated safety check: Pass | MIT | |
| Sub2API AdminWei-Shaw/sub2api | 43k | 1 repos | ~717 | Automated safety check: Pass | LGPL-3.0 | |
| Firecrawl Build Onboardingfirecrawl/firecrawl | 189k | 1 repos | ~1.4k | Automated safety check: Notes | ISC | |
| Obsidian BasesAtmosphere/atmosphere | 3.8k | 22 repos | ~3.2k | Automated safety check: Pass | Apache-2.0 |
coollabsio/coolify
A skill your agent uses whenever the user mentions Horizon by name in a Laravel context.
rolling-scopes/rsschool-app
NestJS best practices and architecture patterns for building production-ready applications.
Wei-Shaw/sub2api
Manages a Sub2API deployment from the command line: accounts, redeem and invitation codes, groups, proxies, imports, exports and raw admin API calls.
firecrawl/firecrawl
Gets Firecrawl working in a project: signs you in through the browser, saves FIRECRAWL_API_KEY to .env and picks the first SDK or REST path.
Atmosphere/atmosphere
Create and edit Obsidian Bases (.base files) with views, filters, formulas, and summaries.
coollabsio/coolify
ACTIVATE when the user works on authentication in Laravel. An agent skill from coollabsio/coolify.
TinyAGI/tinyagi
Create, list, and delete scheduled tasks (recurring or one-time) that send messages to agents.
TinyAGI/tinyagi
Send a proactive message to a paired user via their channel (Discord, Telegram, or WhatsApp).
TinyAGI/tinyagi
Search for and install skills from the skills registry to agent workspaces.
TinyAGI/tinyagi
Manage your assigned tasks on the TinyAGI kanban board — list tasks, update task status, create new tasks, and add or view comments.
TinyAGI/tinyagi
Manage your persistent hierarchical memory — save, update, search, and organize knowledge as markdown files in the memory/ folder.
Categories
Manage and operate the TinyAGI system itself — agents, teams, settings, queue, tasks, daemon lifecycle, and source code. Tinyagi Admin is an agent skill from TinyAGI/tinyagi. Manage and operate the TinyAGI system itself — agents, teams, settings, queue, tasks, daemon lifecycle, and source code.
Tinyagi Admin fits situations like: the agent needs to: list/add/remove/update agents; check queue status; start/stop/restart TinyAGI; change settings (provider.
Run `npx skills add TinyAGI/tinyagi --skill tinyagi-admin -a claude-code`. Or copy the skill folder (.agents/skills/tinyagi-admin in TinyAGI/tinyagi) into .claude/skills/tinyagi-admin in your project. Claude Code loads it when a task matches its description.
Run `npx skills add TinyAGI/tinyagi --skill tinyagi-admin -a codex`. Or copy the skill folder (.agents/skills/tinyagi-admin in TinyAGI/tinyagi) into .agents/skills/tinyagi-admin 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 TinyAGI/tinyagi --skill tinyagi-admin -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/tinyagi-admin, .gemini/skills/tinyagi-admin, .github/skills/tinyagi-admin and .opencode/skills/tinyagi-admin in your project.
Going by SKILL.md and its folder, Tinyagi Admin needs a shell for the scripts in its folder and the command-line tools its instructions call (curl, jq, npm and git). Our summary lists: A Bash shell; Docker.
SKILL.md contains no URLs. Its commands use curl, npm and git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Tinyagi Admin is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.5k tokens (SKILL.md is roughly 10k 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 Tinyagi Admin: Configuring Horizon (coollabsio/coolify, 63k stars), Nestjs Best Practices (rolling-scopes/rsschool-app, 10k stars), Sub2API Admin (Wei-Shaw/sub2api, 43k stars) and Firecrawl Build Onboarding (firecrawl/firecrawl, 189k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
TinyAGI (a GitHub organization) maintains it in TinyAGI/tinyagi, which has 3,620 GitHub stars. The repository holds 6 skills in this directory. The repository was last updated on March 30, 2026.
Source: TinyAGI/tinyagi on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.