Skip to content

Repository files navigation

ArgonAgent logo

ArgonAgent

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 ajv when 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 SkillHost port. See the Skills section of the CLI README.
  • Optional sandbox — an isolated-vm based JavaScript CodeAct sandbox (lazy-loaded; isolated-vm is 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.

Layout

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)

CLI

@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.

aragon running in Windows PowerShell: the ARGON banner over a full-screen TUI, with the active model and working directory in the header, a message composer at the bottom, and a status bar reporting idle state, thinking level, context usage, token counts, and session cost.

# Global
npm i -g @argon-agent/cli
aragon

# Zero-install
npx @argon-agent/cli

From 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 -p

See packages/cli/README.md for install, usage, keybindings, slash commands, and configuration.

Quick start

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.

Build & test

npm install
npm run build        # builds every package (tsc → dist)
npm test             # runs each package's test suite

Publishing

@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).

License

MIT — see LICENSE.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages