Franklin Agent

A wallet-backed CLI that spends USDC on models and tools to execute research, coding, and trading tasks.

Stars
★ 563
Last updated
today
License
Apache-2.0
Primary language
TypeScript

At a glance

How it runs
CLIIDE extensionChat bot
Works with
Platform-specific
Cost
Free tier plus a paid hosted plan
Setup effort
Low · running in minutes
You'll need
Node.js 20.19+USDC on Base or Solana for paid models and paid toolsShell / CLINetwork accessLocal filesystemMCP Server
Typical use
A crypto trader at a terminal wants a BTC or SOL signal based on CoinGecko data and locally calculated RSI, MACD, Bollinger bands, and volatility before reviewing a trade plan.
Not a fit if
  • Teams unwilling to route model and paid-tool calls through the BlockRun Gateway and a USDC wallet.
  • Users who need fully offline or local-model operation without USDC on Base or Solana.
  • Developers stuck on Node below 20.19 who cannot upgrade their runtime.

What does this agent do, and when should you use it?

Franklin Agent is a TypeScript command-line agent from BlockRun built around a wallet-funded execution loop. Its Smart Router selects among multiple models, while the BlockRun Gateway supplies model, search, image, and other paid services that settle through x402 USDC micropayments. The CLI includes persistent sessions, session search, cost insights, MCP auto-discovery, and a plugin SDK; its wallet configuration and session history can also be used by its VS Code extension and Telegram entry point. Trading is a primary workflow: it retrieves CoinGecko market data, calculates technical indicators locally, and requires approval of structured plans before trades on Jupiter, 0x, or Polymarket. It fits terminal users who want wallet-bounded spending across models and tools and are willing to use the BlockRun gateway.

After a user states an outcome in the franklin CLI, the runtime follows Intent → Smart Router → Tool Use → Spend Control → Result. It can use Read, Write, Edit, Bash, Glob, Grep, WebFetch, WebSearch, Task, ImageGen, MemoryRecall, AskUser, SubAgent, and Trading* tools to inspect and modify files, run commands, retrieve web material, create images, delegate work, and operate trading workflows. TradingSignal fetches market data from CoinGecko and computes RSI, MACD, Bollinger bands, and volatility locally; a real trade first becomes a trade plan with venue, asset, size, slippage, stop condition, rationale, and total spend, then waits for approval. Sessions stream to disk and can be restored or searched with /history, /resume, and /session-search, while /cost and franklin insights report spending. Paid actions settle through wallet-signed x402 micropayments and stop when the wallet balance is exhausted.

  1. A crypto trader at a terminal wants a BTC or SOL signal based on CoinGecko data and locally calculated RSI, MACD, Bollinger bands, and volatility before reviewing a trade plan.
  2. A developer wants one command-line session to read src/auth.ts, edit code, run npm test, and expose the cost of each step.
  3. A researcher needs /goal to compare x402-compatible data APIs within turn and --max-spend limits, with adversarial reviewers checking the evidence behind a completion claim.
  4. An independent creator wants to generate a startup logo from the CLI through a funded wallet rather than configure an OpenAI API key.
  5. A user running an always-on machine needs owner-locked Telegram access to resume sessions and send work requests from a phone.

How do you install or deploy this agent?

Node.js 20.19+ is required; the project recommends Node 22 LTS. Install and start:

npm install -g @blockrun/franklin

franklin
Or run without a global installation:

npx @blockrun/franklin

Free NVIDIA models are available by default. For paid models and paid tools, run franklin setup base or franklin setup solana, then fund the created wallet address with USDC; use franklin balance to display the address and balance.

How do you use this agent?

Start with franklin, or explicitly select the free profile:

franklin --model free

Enter a task such as “what's BTC looking like today?” or ask it to refactor a file and run tests. Use /model to choose a model, /plan for read-only planning, /execute for execution, and /cost for the session spend; use /goal for longer objectives and /loop for scheduled work. Real trades require review and approval of a trade plan, and approved budgets expire after 15 minutes. For remote access, set TELEGRAM_BOT_TOKEN and TELEGRAM_OWNER_ID, then run franklin telegram.

What are this agent's strengths and limitations?

Pros
  • Uses wallet balance as a hard budget cap and settles paid actions with x402 USDC micropayments; the documentation describes no monthly fee or overdraft.
  • The Smart Router offers auto, eco, premium, and free profiles, and reports model selection, cost, and savings in responses.
  • Real-money trading has a non-bypassable trade-plan approval gate, with lifecycle hooks available for daily caps, token blocklists, and spend-ledger vetoes.
  • The CLI, VS Code extension, and Telegram channel can share ~/.blockrun/ configuration and session history; sessions persist, resume, and support full-text search.
Limitations
  • Core model and paid-service access runs through the BlockRun Gateway and its wallet flow, so adoption entails that gateway and payment path.
  • Paid capabilities depend on USDC on Base or Solana; paid models and tools cannot continue when the balance is empty.
  • Node.js 20.19+ is required; the documentation says older Node releases can crash in the Solana dependency path with ERR_REQUIRE_ESM.
  • Although trades require approval, the documented execution venues include Jupiter, 0x, and Polymarket, so users still bear responsibility for assessing each proposed trade.

How does this agent compare with similar options?

The project contrasts itself with subscription coding agents, editor IDEs, and chatbots by claiming wallet-native USDC/x402 payments, outcome-based pricing, automatic model routing, and the ability to buy data, search, and image services. Its comparison also names the OpenAI API as a pay-per-call alternative where each attempt is charged.

Key facts side by side with the most closely related agents.

Agent Source review Form / cost Stars Updated Language Full support on
Franklin Agent This agent 56 · Major gaps CLIFreemium ★ 563 today TypeScript —
Codewhale Terminal Coding Agent 79 · Good CLIFree + model costs ★ 41k today Rust OpenAI API · Claude API
OMA Open Multi-Agent Runtime 79 · Good CLIFree + model costs ★ 7.1k 2d ago TypeScript Codex · Claude Code · OpenAI API · Claude API
Puppetmaster 73 · Some gaps CLIFree + model costs ★ 471 1d ago Python Codex · Claude Code

How does FollowAgents rate this agent?

FollowAgents source review · FARS-2.1
Major gaps
56/ 100 5-point scale 2.8 / 5
Trust 13/29
Reliability 6/14
Adaptability 10/18
Convention 14/18
Effectiveness 9/13
Verifiability 4/8
Why each dimension lost points
Trust13 / 29 · 2.2/5

The README and phone-call skill state the call price, wallet charge, intended action, and explicit confirmation requirement; the README also says real trades require approval. Deductions: the supplied source excerpt does not establish general tool permissions, the scope of funds access, or rollback. The claimed trade-plan gate in CLAUDE.md is not backed by implementation evidence in this packet. The README says API keys are stored with mode 0600, but the storage implementation is not supplied, and credential redaction appears only as a problem identified in the design document.

Reliability6 / 14 · 2.1/5

The entry point installs unhandled-error handlers and flushes stats on exit; the README gives a Node version requirement and troubleshooting steps for common startup failures. Deductions: the README's key/wallet fallback description does not fully align with the design document's explicit fallback decisions. Dependencies include a gateway, an external model catalog, and GitHub tarballs, with no availability commitment or offline alternative shown.

Adaptability10 / 18 · 2.8/5

Documentation covers CLI, VS Code, desktop beta, research, trading, and content scenarios, and distinguishes wallet from prepaid-key payment. Deductions: the packet does not provide an overall permission matrix despite the broad capability set; some skill triggers such as “plan review” and “wallet analysis” are broad, with no disambiguation guidance.

Convention14 / 18 · 3.9/5

The README provides quick-start, troubleshooting, payment options, examples, and limitations; LICENSE and package metadata both identify Apache-2.0. Deductions: the supplied material has no complete changelog, and version evidence is limited to the package version and a dated design document. SECURITY.md gives a reporting channel, response targets, and supported-version scope, though publisher identity remains unverified.

Effectiveness9 / 13 · 3.5/5

Examples show readable research summaries, cost breakdowns, market data, and trade plans, and budget-aware charging could provide practical value. Deductions: these outcomes and model-router savings are primarily product claims without independent results evidence in the packet; the cost-benefit of wallet and pay-per-action use depends on workload and actual usage.

Verifiability4 / 8 · 2.5/5

Several README product descriptions are corroborated by the CLI entry point, package configuration, skills, and security policy; the design document labels itself as an implemented design record. Deductions: claims about model count, router training scale, savings, and trade approval lack corresponding implementation or independent corroboration in the supplied source. The design document's recorded probes and decisions are not equivalent to verification of the current implementation.

Risks and how to mitigate them
  • This is a static packet review; no code was executed. Verify the claimed trade approvals, spend caps, key storage, and credential redaction against implementation files not included here.
  • The phone-call skill places paid calls to real people; check the number, script, local time, and recipient consent before confirming.
Evidence confidence: Low Reviewed Nov 08, 2026 Reviewed revision 6ed2b10770d1
See the full review method →
Maintain this project? Add the FARS badge to your README

The badge shows the current review score and verdict and links back to this page. It refreshes about once an hour after a re-review.

FARS

[![FARS review](https://followagents.com/badge/franklin.svg)](https://followagents.com/en/agents/franklin)
<a href="https://followagents.com/en/agents/franklin"><img src="https://followagents.com/badge/franklin.svg" alt="FARS review"></a>

Recent releases

Latest entries from the project's GitHub Releases. Notes are quoted from upstream as written, not rewritten or tested by FollowAgents.

  1. v3.49.25 Franklin Agent 3.49.25
    Release notes excerpt
    What's Changed * chore(brand): refresh numbers — 117 models, 91 chat, 8 free by @VickyXAI in https://github.com/BlockRunAI/Franklin/pull/239 * chore: bump @blockrun/router-core to 273c2af, release 3.49.25 by @VickyXAI in https://github.com/BlockRunAI/Franklin/pull/243 Full Changelog: https://github.com/BlockRunAI/Franklin/compare/v3.49.24...v3.49.25
    View on GitHub ↗
  2. v3.49.24 Franklin Agent 3.49.24
    Release notes excerpt
    Upgrade if you use Modal sandboxes. - The price follows the size. The gateways now bill a sandbox above 1 CPU or 1024 MB by the hour for its whole lifetime, never below the flat rate. ModalCreate looked its price up by GPU type alone, so an 8-core T4 would have confirmed and reserved $0.05 and then signed about $0.33. The confirm dialog, the reservation and the usage record now use the same rule. - Correct defaults in the tool text. cpu defaults to 1 and memory to 512 MB. The text said 0.125 and 128.
    View on GitHub ↗
  3. v3.49.23 Franklin Agent 3.49.23
    Release notes excerpt
    Security fix. Upgrade if you run franklin proxy, franklin daemon or franklin init. - The proxy needs a token. franklin proxy signs a USDC payment from your wallet for every request it forwards, and until now it accepted any request that reached 127.0.0.1. Any other account on the machine, any local program, and any web page served from a local dev server could spend from your wallet through it. The proxy now refuses requests without its token with a 401. The token is created once in ~/.blockrun/proxy-token (owner-only) and is accepted as …
    View on GitHub ↗

FAQ

Can I start free without a wallet or API key?
The README says the default free NVIDIA models can be used by running franklin or franklin --model free. Paid models, image generation, and paid tools require setting up and funding a Base or Solana USDC wallet.
Will Franklin place real trades automatically?
Not directly. The README states that real trades through Jupiter, 0x, and Polymarket must first be presented as a structured trade plan and approved by the user; approved budget is drawn down per trade and expires after 15 minutes.
How are costs controlled, and what happens when funds run out?
Each paid action settles in USDC through x402. Use /cost and franklin insights for spending details. The wallet balance is the hard limit, and Franklin stops when it reaches zero.
Can I control it from my phone?
Yes. Set TELEGRAM_BOT_TOKEN and TELEGRAM_OWNER_ID on an always-on machine, then run franklin telegram. The channel is owner-locked and supports session resumption after restarts.
Was this page helpful?
View on GitHub ↗ Install ↓

Compare agents like this one

The same FARS review applied across the shortlist this agent qualifies for.