惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

雷峰网
雷峰网
博客园 - 聂微东
酷 壳 – CoolShell
酷 壳 – CoolShell
宝玉的分享
宝玉的分享
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
罗磊的独立博客
Hugging Face - Blog
Hugging Face - Blog
T
Tailwind CSS Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
IT之家
IT之家
博客园_首页
博客园 - 三生石上(FineUI控件)
博客园 - 叶小钗
Apple Machine Learning Research
Apple Machine Learning Research
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
量子位
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
人人都是产品经理
人人都是产品经理
美团技术团队
小众软件
小众软件
Jina AI
Jina AI
S
SegmentFault 最新的问题
博客园 - Franky
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com

Hacker News - Newest: "AI"

AI can't read an investor deck AI as an attorney? Student uses ChatGPT, Gemini to sue UW over alleged racial discrimination Hacking MCP Servers in AI Systems – The Rug Pull: Tool Changes After Approval GitHub - MeepCastana/KubeezCut: Free Web based video editor Can AI judge journalism? A Thiel-backed startup says yes, even if it risks chilling whistleblowers Coming soon: 10 Things That Matter in AI Right Now DARPA built an AI to fact-check enemy weapons claims What explains heterogeneity in AI adoption? When AI Meets Muscle: Context-Aware Electrical Stimulation Promises a New Way to Guide Human Movements - Department of Computer Science AI Changed How We Build. It Did Not Change What Matters. Linux rules on using AI-generated code - Copilot is OK, but humans must take 'full responsibility for the… Meta spins up AI version of Mark Zuckerberg to engage with employees Code Mode: Let Your AI Write Programs, Not Just Call Tools | TanStack Blog GitHub - Delavalom/graft: Go framework for building AI agents. Type-safe tools, multi-provider (OpenAI, Anthropic, Gemini, Bedrock), zero vendor SDKs. India's TCS tops estimates, says new AI models did not dent services demand Gen Z's fading AI hype Strong feeling: we are in a folded AI reality GitHub - machinarii/total-recall-catalog: A reference catalog of latest knowledge retrieval, memory & RAG systems GitHub - mensfeld/code-on-incus: Give each AI agent its own isolated machine with root, Docker, and systemd. Active defense detects and stops threats automatically.. Quantization, LoRA, and the 8% Problem: Benchmarking Local LLMs for Production AI Iran war: We spoke to the man making Lego-style AI videos that experts say are powerful propaganda Powell, Bessent discussed Anthropic's Mythos AI cyber threat with major U.S. banks GitHub - immartian/bellamem: Persistent belief-graph memory for AI agents. Retrieves decisive context by importance — not recency, not RAG, not /compact. recursive-mode: The Repo-Native Operating System for AI Engineering After the attack on Sam Altman's home, will AI CEO's go on the offensive? The biggest advance in AI since the LLM Opus 4.6 vs GPT 5.4 One Prompt Unity World Generation Test “AI polls” are fake polls Client Challenge Can AI be a 'child of God'? Inside Anthropic's meeting with Christian leaders
GitHub - WillNigri/Agentic-Tool-Optimization: Tools that ...
WillNigri · 2026-05-13 · via Hacker News - Newest: "AI"

The local-first developer-workflow operations platform for multi-runtime AI agents — used by humans and their coding agents together. Static system prompts are the floor, not the ceiling. ATO makes it trivial to build agents whose prompts resolve from files, env vars, databases, or other LLMs at fire time. Multi-runtime by protocol. Local-first. MIT.

Coding agent? Read AGENTS.md first. ATO is built to be driven by both humans (via the GUI) and AI coding agents (via CLI and MCP). The AGENTS.md doc covers everything an AI agent needs to know to operate ATO on a developer's behalf.

// Your system prompt:
You are a context-aware assistant for {user_name} working on {project_name}.
Today is {today}. The project root is {project_root}.
// All four resolve at every turn — env var, computed JS, project path, current date.
// Plus a pre-call hook injects the latest CHANGELOG.md into <context> on each call.

This is what production-grade agents look like — and ATO makes it a 5-minute setup, not weeks of plumbing. Pick the Production-grade Agent template on first launch to see the dynamic pattern wired end-to-end.

Two group types make agents collaborate:

  • Routed groups — single prompt → router picks the right specialist child (keyword rules + LLM-classifier fallback).
  • Sequential automations — single prompt → children run in order, each agent's output flows into the next as input. Each child runs on its own runtime, so you can chain Claude → Codex → Gemini in a single pipeline.

Supported: Claude Code, Codex / OpenAI Agents SDK, Gemini CLI / ADK, OpenClaw, Hermes, Ollama as native CLIs — plus 15+ API providers including Anthropic, OpenAI, Google AI, Mistral, Groq, xAI/Grok, Together, Fireworks, DeepSeek, Qwen, MiniMax, Kimi, GLM, Yi.

Three audiences, one app

  • First-time users — chat-style guided wizard ("describe what you want") suggests runtime, model, skills, MCPs. Or pick a starter template. Working agent in under two minutes.
  • Power users — Quick form, command palette (⌘K), embedded portable-pty terminal, persistent threads, drag-drop file attachments, streaming responses with syntax-highlighted markdown, sequential automation pipelines.
  • Teams — cloud sync, shared agents, team-wide observability, SSO, audit retention via the optional Pro / Team tier.
  • AI coding agents (new) — every meaningful operation is reachable from a local CLI (ato <command>) or a stdio MCP server. The agent reads AGENTS.md, discovers ATO's surface, and operates it alongside the human. Local SQLite means zero network round-trip; agents never have to leave the machine.

Bring your own auth: ATO rides your existing logged-in CLI subscriptions (Claude Code, Codex, Gemini CLI) the way VS Code rides your GitHub login — or you can use stored API keys. Your choice, per runtime.

Local-first by design

ATO writes everything to ~/.ato/ on the developer's machine:

  • ~/.ato/local.db — SQLite database with every dispatch, replay, config change, agent definition, chat thread, skill registration. Agents can sqlite3 query it directly for fast reads.
  • ~/.ato/agent-logs.jsonl — append-only JSONL log; grep-friendly.
  • ~/.ato/workflows/, ~/.ato/cron-jobs.json, ~/.ato/backups/ — workflows, schedules, auto-backups.

Sign-in is optional and only matters for cloud sync features (cross-device trace history, team workspaces). Every core operation — dispatch, replay, compare, file attribution, configuration ledger — works fully offline.

Relationship to other tools

ATO is the developer-workflow operations layer for multi-runtime AI agents. It is complementary to production-observability tools like Langfuse, Helicone, LangSmith, Arize Phoenix, and Braintrust — not a competitor.

  • Those tools instrument deployed production stacks via SDKs and log end-user conversations in real time.
  • ATO covers the developer side of the same agent — what you dispatched while building, what you replayed across runtimes, what regressed after a config change, what each dispatch cost, which agent touched which files.

Most production teams use one from each camp: a Langfuse / Helicone for production user-conversation logging, plus ATO for the developer/multi-runtime side. The two views fit together: production tools catch regressions in real user traffic; ATO catches regressions before you ship, and lets you replay any failing example against an alternative runtime in one click.

Website | Web Dashboard | SDK Docs | npm

MIT Licensed | Local-first | macOS, Windows, Linux


Install

Desktop App

# Homebrew (macOS)
brew tap WillNigri/ato
brew install --cask ato

# Or download from GitHub Releases
# macOS (Apple Silicon + Intel), Windows (.exe), Linux (.AppImage, .deb)

Download latest release

SDK — narrow scope

npm install @ato-sdk/js

@ato-sdk/js is a trace forwarder for ATO-authored agents deployed outside the desktop app (Cloudflare Worker / Vercel / Docker / Node bundles). It is not a general-purpose LLM observability SDK.

If you have an existing production stack and want general LLM observability, use Langfuse, Helicone, LangSmith, Arize Phoenix, or Braintrust. They're built for that job. ATO is complementary to them — see Relationship to other tools below.

Full SDK docs.

MCP Server

{
  "mcpServers": {
    "ato": {
      "command": "npx",
      "args": ["tsx", "services/mcp-server/src/index.ts"]
    }
  }
}

The MCP server exposes run_agent — any MCP-aware runtime can dispatch to any ATO-managed agent regardless of native runtime. Cross-runtime by protocol, not by hack.

Claude Code skill: ato-review

The repo ships a Claude Code skill at .claude/skills/ato-review/SKILL.md. When a Claude session is in this repo, the skill instructs Claude to dispatch every non-trivial diff to a reviewer runtime (default: MiniMax) via ato dispatch before committing. Findings are parsed, applied or deferred with justification, and recorded in the commit body. Codifies the "build passes ≠ reviewed" guardrail described in Garry Tan's AI Agent Complexity Ratchet post — turns review into a contract Claude follows automatically.

To use it on another project: copy .claude/skills/ato-review/ into your repo, ensure ato is on PATH, and set $ATO_REVIEWER to whichever runtime you want as the second-opinion source (or rely on the MiniMax default).


What's in the box

Production-Ready Agents (v1.5.5)

  • Production-grade Agent template — fifth starter ships pre-wired with 4 variables (env / computed / project-path / Date), a pre-call file hook, and a memory policy. Click it once → see the dynamic-prompt pattern end-to-end without manually configuring anything.
  • Dynamic-prompt messaging — the wizard now spells out that prompts adapt at fire time. Empty states on Variables / Context tabs teach the resolver kinds instead of just saying "no items yet."
  • Cron jobs wake from sleep on every desktop OS — launchd on macOS, systemd-user timers on Linux, Task Scheduler on Windows. Your scheduled agents fire even when ATO is closed.
  • Demo Tab-to-pause — viewing the in-app demo? Tab pauses, Tab resumes, Esc stops. Catch a long subtitle without restarting from scratch.

Daily workspace (v1.5.0–1.5.4)

  • Persistent chat threads — conversations survive app restart, scoped optionally to projects, listed in a dropdown with msg count + last activity.
  • Multi-runtime mid-thread — switch Claude → Codex → Gemini in the same conversation. The full thread history travels to whichever runtime answers next.
  • Streaming responses — tokens appear as they're generated, with a blinking caret. No more 20-second blocking waits.
  • Sequential pipeline messages — when a Claude → Codex pipeline returns, the messages stagger in with a "stage 1 / 2" badge so you can read each step as it arrives.
  • Syntax-highlighted markdown — assistant replies render as proper markdown: headings, lists, GFM tables, fenced code blocks with copy buttons. Inline code in cyan.
  • File attachments — paperclip pick or drag-drop a text file (.md, .json, .ts, .py, etc.); contents join the conversation as context.
  • Embedded shell — real interactive PTY via xterm.js + portable-pty, scoped to active project, persists across navigation.
  • i18n — English, Português, Español. Demo subtitles localized too.

Production-grade agent authoring (v1.4)

Every principle from the context engineering literature, as a first-class UI:

  • Variables{user_name} style templates with resolvers: static, env var, project path, file (Free) + db-query, computed expressions, MCP call (Pro).
  • Pre-call context hooks — ordered list of resolvers that fire before each turn and inject results into the user message inside <context>...</context> tags.
  • Conversation summarizers — per-agent memory policy (summarizeAfter, keepLastK, custom summarizer model). Long sessions auto-compact.
  • Multi-agent groups — two types: Routed (router picks one child per prompt — keyword rules + LLM-classifier fallback) and Sequential automation pipeline (children run in position order, each agent's output feeds the next as input; cross-runtime chains like Claude → Codex → Gemini work natively).
  • Per-task models — distinct models for routing / summarizing / responding / evaluating. Cheap fast for routing, advanced for response.
  • Observability — per-agent metrics (run count, p50/p95 latency, success rate), trace explorer with full sequence (variables → hooks → router → response).
  • Evaluators — heuristic kinds (contains / not-contains / length-range / tool-called) run locally; LLM-as-judge runs Pro cloud-side. Manual + scheduled batch — never live on every dispatch.
  • Tool description rewrite — per-MCP-tool button that asks your runtime to rewrite the description for your specific use-case.

Cross-runtime dispatch (agents-as-MCPs)

The MCP server exposes mcp__ato__run_agent("<slug>", "<prompt>"). Any MCP-aware runtime can dispatch to any ATO-managed agent. Slug points at a single agent or a group — groups route through their router transparently. This is how cross-runtime works: not via a fragile shim, but as a standard MCP tool.

Create Agent (3 paths)

  • Guided — chat wizard: describe goal → ATO suggests runtime/model/skills/MCPs/permissions as confirmable cards.
  • Quick — one-page form, all fields visible, draft auto-saved.
  • Templates — 5 production-quality starters (PR Reviewer, Doc Writer, Codebase Explainer, Data Analyst, DevOps Helper). Pick → form pre-filled → customize → save.

All paths write through the same safety pipeline (hash check, auto-backup, audit log) to the right place per runtime.

Skills, MCPs, projects

  • Skills Manager — per-runtime tabs, scope grouping (enterprise/personal/project/plugin), drag-to-prioritize, conflict detection (similar-description warnings), AI-powered creation.
  • Skill version history — every edit auto-snapshots; drawer shows prior versions; restore is itself reversible.
  • Bulk skill ops — multi-select toolbar: enable/disable/delete N at once.
  • Marketplace — browse curated + community skills.
  • MCP install UI — curated registry (filesystem, github, postgres, slack, brave-search, gmail, calendar, …) with one-click install.
  • Projects dashboard — click a project, see everything: memory hierarchy, skills, subagents, commands, hooks, permissions, MCPs. File watcher auto-refreshes.

Settings

  • Runtimes — Setup tab (CLI paths, SSH config, status checks) + Compare tab (per-runtime feature/config matrix).
  • Models — model config per runtime/project.
  • API Keys / Secrets / Environment — encrypted local storage, OS-keychain-backed where applicable.
  • Cloud — auth, teams, sync, notifications.
  • Backup — JSON export/import of all your config (agents, hooks, variables, groups, projects, env, model configs, secrets metadata).

Cross-cutting

  • Command palette ⌘K — global search across agents, skills, MCPs, projects, plus quick navigation.
  • Tier gating — Pro features are visible to Free users with a crown lock badge + upgrade tooltip. Discovery sells; hiding doesn't.
  • i18n — EN, PT, ES (react-i18next).

SDK (trace forwarder)

@ato-sdk/js is narrow-scoped: it forwards traces from agents you authored in ATO and deployed externally (Cloudflare Worker / Vercel / Docker / Node bundles) back to your ATO Insights dashboard. It is not a drop-in observability SDK for arbitrary production stacks.

Provider Wrapper Import
Anthropic wrapAnthropic(client) @ato-sdk/js/anthropic
OpenAI wrapOpenAI(client) @ato-sdk/js/openai
Claude Agent SDK wrapAgent(agent) @ato-sdk/js/agent
Custom provider in a bundle capture(trace) @ato-sdk/js

Each forwarded trace records: model, tokens (input/output/cached), cost (USD), duration, status, errors, metadata. Built-in pricing for 60+ models. Full SDK documentation.


Supported Runtimes

Runtime Provider Config Files Skills Directory
Claude Code Anthropic CLAUDE.md, .claude/settings.json, .mcp.json ~/.claude/skills/
Codex / OpenAI Agents SDK OpenAI AGENTS.md, .codex/config.toml, codex.json ~/.codex/skills/
Gemini CLI / ADK Google GEMINI.md, .gemini/settings.json, root_agent.yaml .gemini/agents/
OpenClaw OpenClaw SOUL.md, TOOLS.md, openclaw.json ~/.openclaw/skills/
Hermes NousResearch SOUL.md, config.yaml, memories/*.md ~/.hermes/skills/
Ollama local auto-detect localhost:11434 n/a

Free vs Pro vs Team vs Enterprise

Free (this repo) Pro $29/seat/mo Team $49/seat/mo Enterprise $99+/seat/yr
Single-agent create / run / shell / Quick Test
Cross-runtime MCP dispatch (run_agent)
Persistent multi-runtime threads
Streaming responses + markdown
Variables — basic resolvers
Variables — db-query / computed / MCP-call
Pre-call context hooks
Tunable summarizer policy
Routed groups (router picks one) up to 3 children unlimited unlimited + shared unlimited
Sequential automation pipelines up to 3 stages unlimited unlimited + shared unlimited
Cross-runtime children in pipelines
Visual group graph editor view-only edit edit + collab edit + audit
Per-task model selection
Local trace history last 100 runs unlimited unlimited unlimited
Cloud trace retention 30 days 90 days unlimited
Observability dashboard basic counts full per-agent + team aggregates + SLA dashboards
LLM-as-judge evaluators
Cron / Schedules up to 3 jobs unlimited unlimited unlimited + SLA
Cloud sync of agents
Team workspaces / shared agents
SSO / Audit retention

The OSS desktop is fully functional standalone — Pro adds cloud-side capabilities (suggest fallback, hosted judge, trace retention, sync). Sign-in is optional.


Architecture

apps/
  desktop/                 # Tauri 2.x desktop app (Rust + React)
  web/                     # Web dashboard (Vite + React)

packages/
  sdk/                     # @ato-sdk/js — auto-trace LLM calls
  core/                    # Shared types, token utils
  db/                      # Database adapters

services/
  mcp-server/              # Standalone MCP server with `run_agent`

Cloud Backend (separate repo, Pro+)

api.agentictool.ai
├── API Gateway       # Routing, JWT auth, tiered rate limiting
├── Auth              # Register, login, GitHub OAuth, SSO/OIDC, tier
├── Skills            # CRUD, agent-suggest, agent-traces, agent-evaluators/judge
├── Analytics         # Token tracking, cost aggregation, burn rate
├── MCP Monitor       # MCP server health monitoring
├── Teams             # Workspaces, roles, activity logs
└── Notifications     # Email (SMTP), Slack, Discord, Telegram

Data Storage (desktop — all local)

Data Location
Database ~/.ato/local.db (SQLite)
Agent logs / traces ~/.ato/agent-logs.jsonl
Workflows ~/.ato/workflows/
Cron jobs ~/.ato/cron-jobs.json
File backups ~/.ato/backups/ (auto-pruned >30 days)

Quick Start (Development)

git clone https://github.com/WillNigri/Agentic-Tool-Optimization.git
cd Agentic-Tool-Optimization

# Desktop app
cd apps/desktop && npm install && npx tauri dev

# MCP server
npm run dev:mcp

# SDK development
cd packages/sdk && npm run dev

Requires Rust and Tauri 2 prerequisites.


Version History

Version Highlights
v2.2.1 Regression → Replay — failing examples in the regression drill modal now have a one-click "Replay on…" button that re-dispatches the prompt against an alternative runtime + diffs side-by-side. Closes the loop the strategy alignment audit flagged as highest-leverage.
v2.2.0 Real cost capture on the dispatch path — Rust dispatch path computes tokens + cost at finish and persists them on execution_logs + replay_jobs. Compare / Cost Recs / Replay panels read the captured value instead of recomputing per render.
v2.1.x Replay infrastructure + deep regression detection + cost recommendations — replay any cloud trace against a different runtime / model; configuration ledger joined with trace stats surfaces regressions with failing-example drill-down; cost-rec layer surfaces same-agent model swaps when historical data justifies them
v2.0.0 External agents + hosted deployment — Internal-vs-External agent toggle; deploy bundles for Cloudflare Worker / Vercel / Docker / Node across 9 chat-LLM providers; knowledge ingestion + RAG; embed widget; trace sink forwarding to Langfuse + OTLP webhook (complementary boundary baked into v2.0); Apple Developer signing + notarization
v1.5.0–1.5.5 Daily workspace — persistent chat threads (SQLite), streaming responses, syntax-highlighted markdown, file attachments, multi-runtime mid-thread, per-thread sticky agent, production-grade agent template with welcome tour, dynamic-prompt empty-state CTAs
v1.4.0 Production-grade agent authoring — Variables (F1), Context Hooks (F2), Summarizers (F3), Multi-agent Groups + Router + Graph Editor (F4), Per-task Models (F5), Observability + Trace Explorer (F6), Evaluators (F7), Tool Description Rewrite (F8); Pro tier gating; agent templates (5 starters); skill version history; bulk skill ops; runtime comparison tab; configuration export/import
v1.3.0 The GUI Pivot — IA collapse (24 → 6 sections), Home page, Create Agent (Guided + Quick), MCP install UI, embedded terminal (xterm + portable-pty), command palette (⌘K), subscriptions-or-keys auth model
v1.2.0 Visual workspace canvas, live execution visualization, skill palette, multi-select batch ops
v1.1.0 Projects dashboard, 6 runtimes (+ Gemini + OpenAI Agents SDK), Ollama provider, CodeMirror editor with conflict detection + inline lint, sandbox/policies management, backup/restore, file watcher, token chart, i18n (EN/PT/ES)
v1.0.0 SDK (@ato-sdk/js — narrow-scoped trace forwarder for ATO-authored agents deployed externally; not general-purpose LLM observability), web dashboard, cost tracking, LLM API key management, audit logging, agent monitor, SSO, Homebrew tap

Engineering

  • CI/CD: GitHub Actions runs cargo check + cargo test + vitest run + vite build on every PR
  • 66+ Rust unit tests + frontend Vitest tests
  • Code splitting: Sidebar sections lazy-loaded via React.lazy
  • Accessibility: ARIA labels on navigation, dialogs, dashboard tabs
  • Modular Rust: types separate from commands

Security

  • Local-first — no network calls unless sync explicitly enabled
  • Parameterized SQL — all queries
  • API keys — encrypted locally, never sent externally
  • SSH — OpenClaw uses key-based auth (paths only)
  • Validation — all inputs validated with Zod / serde
  • Conflict detection — content hashing prevents overwriting concurrent edits
  • Auto-backup — every file write creates a timestamped backup, restorable from the UI
  • Audit trail — every file write logged with diff stats and backup path
  • db-query resolver — opens SQLite read-only; rejects anything that isn't SELECT/WITH
  • computed resolver — constrained expression grammar, not arbitrary JS

Contributing

See CONTRIBUTING.md.

License

MIT — see LICENSE