A zero-coupling TypeScript agent engine, extracted from AragonMesh's "JR Agent" core so it can be reused across projects and published to the public registry.
ArgonAgent provides the full agentic LLM execution loop:
- LLM provider adapters — Anthropic, OpenAI, Google, with a pluggable
provider registry and streaming (
streamLLM/completeLLM). - Tool system — typed tool definitions, a registry, a JSON-Schema validator
(uses
ajvwhen available, falls back to a built-in validator), and an executor with per-tool timeouts. - Engine — multi-turn agent loop, message management, a steering/follow-up queue, and an idle watchdog.
- Skills — reusable expert procedures on disk, surfaced to the model through
three levels of progressive disclosure so fifty of them cost a few thousand
characters of context. Parsing, validation, budgeting and rendering live in
core; all I/O lives in the CLI behind an injected
SkillHostport. See the Skills section of the CLI README. - Optional sandbox — an
isolated-vmbased JavaScript CodeAct sandbox (lazy-loaded;isolated-vmis an optional dependency).
The engine is dependency-injected: you supply the provider registry, an API-key resolver, the tool list, and the model reference. It holds no database, no persistence, and no framework coupling.
This repository is an npm-workspaces mono-repo:
argon-agent-core/
package.json # workspaces root (private)
tsconfig.base.json # shared compiler options (ES2022 / NodeNext / strict)
packages/
core/ # @argon-agent/core — the publishable engine
cli/ # @argon-agent/cli — the interactive terminal UI (TUI)
@argon-agent/cli is a Claude-Code / Codex-style interactive
terminal UI built on top of the engine. Run aragon in any directory for a
full-screen, keyboard-driven chat with a built-in filesystem/shell toolset.
# Global
npm i -g @argon-agent/cli
aragon
# Zero-install
npx @argon-agent/cliFrom a clone of this monorepo, build and launch it against your working copy instead:
npm run dev:cli # build + launch the TUI from this monorepo
aragon "summarize README" # or one-shot: echo "list files" | aragon -pSee packages/cli/README.md for install, usage,
keybindings, slash commands, and configuration.
import { ArgonAgent, getProviderRegistry, initProviders } from '@argon-agent/core';
initProviders();
const agent = new ArgonAgent({
systemPrompt: 'You are a coding agent.',
model: { providerId: 'anthropic', modelId: 'claude-...', baseUrl: '...' },
tools: [],
providerRegistry: getProviderRegistry(),
getApiKey: () => process.env.ANTHROPIC_API_KEY,
});
await agent.prompt('Hello');ArgonAgent is an alias of the engine's Agent class — both are exported.
npm install
npm run build # builds every package (tsc → dist)
npm test # runs each package's test suite@argon-agent/core is published from its own package directory, not from the
workspace root. See packages/core/README.md
for the full release procedure (cd packages/core && npm publish, or
npm publish -w packages/core from the root).
MIT — see LICENSE.

