AI Decision System
Replayable, offline-verifiable records for AI-assisted go/no-go decisions: experiment promotions, typed model answers and human-approved actions.
翻译准备中
开源 TypeScript 框架,用于生产 AI 代理。支持 40+ LLM 提供商、100+ 工具、多代理团队、RAG、护栏、断路器、预算强制、OTLP 跟踪。CrewAI / LangChain 替代方案。
AI 翻译
Open-source TypeScript framework for production AI agents. 40+ LLM providers, 100+ tools, multi-agent teams, RAG, guardrails, circuit breakers, budget enforcement, OTLP tracing. CrewAI / LangChain alt
开发工具TypeScript · JavaScriptGitHub @confused-ai在线运营者未确认
试用过了吗? 点一下就好,无需登录。
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证TypeScript AI 代理框架 — 支持 40+ LLM 提供商、100+ 工具、多代理编排、RAG、护栏、断路器、人工在环(HITL)、预算强制。开源 CrewAI / LangChain 替代方案。——用于在分钟内规模化构建生产级多代理。
AI 翻译
TypeScript AI agent framework — 40+ LLM providers, 100+ tools, multi-agent orchestration, RAG, guardrails, circuit breakers, HITL, budget enforcement. Open-source CrewAI / LangChain alternative. — For Building Production-Grade Multi Agents in Minutes at Scale
取自仓库 README
正在加载完整 README。 以下为已保存的摘录。
Ship production AI agents in TypeScript.
One package. Start with a one-line agent, then add tools, sessions, retrieval,
orchestration, serving, and production controls — without ever switching frameworks.
Every agent framework can spin up an agent. personaforge is the only TypeScript framework that ships durability, multi-agent orchestration, guardrails, eval, and a control-plane dashboard in a single npm install.
bash
npm install personaforge
or
bun add personaforge查看完整 README ↗Every agent framework can spin up an agent. personaforge is the only TypeScript framework that ships durability, multi-agent orchestration, guardrails, eval, and a control-plane dashboard in a single npm install.
| Against | personaforge wins on |
|---|---|
| LangChain | Single package (not 200+). Built-in checkpoint/replay. MCP + A2A protocols. SSRF-protected tools. τ-bench cross-framework benchmarks. |
| Vercel AI SDK | Full agent runtime (not just streaming primitives). Sessions, memory, knowledge, teams, durability, guardrails, eval, control plane. |
| CrewAI | TypeScript-native. 6 team modes vs 2. Event-sourced durability. Built-in eval. 120+ tools. Graph DAG engine. |
| LangGraph | Same graph semantics in TypeScript — plus budget enforcement, guardrails, OTLP tracing, eval, and control plane in one install. |
| Mastra | Durable DAG engine, circuit breakers, USD budget caps, multi-tenancy, 100+ tools, and enterprise audit logging. |
| AutoGen / Agno | TypeScript-native. Durable interrupts + resume. Built-in guardrails + budget enforcement. OTLP tracing. Control plane dashboard. |
import { agent } from 'personaforge/lite';
import { tool } from 'personaforge/tool';
import { z } from 'zod';
const getQuote = tool({
name: 'get_quote',
description: 'Return a stock quote for a ticker symbol.',
parameters: z.object({ symbol: z.string() }),
execute: async ({ symbol }) => ({ symbol, price: 927.5, changePct: 1.4 }),
});
const financeAgent = agent({
name: 'finance-agent',
model: 'gpt-4o-mini',
instructions: 'Use the tool to answer market questions in one concise sentence.',
tools: [getQuote],
});
const result = await financeAgent.run("What's NVDA trading at today?");
console.log(result.text); // "NVDA is trading at $927.50, up 1.4% today."
npm install personaforge
# or
bun add personaforge
Zero-config. Treeshakeable. No peer dependencies required for basic use.
@ai-sdk/provider model and morecompose, pipe, parallel, fallback, retry, timeout, map, filterAgentRunResult. Zero instrumentation.maxConcurrency.createKnowledgeBase with text splitters, BM25 indexing, hybrid RRF fusion, rerankers (Cohere, Jina, LLM), multi-query, contextual compression, parent-document, self-query, time-weighted retrievers| Mode | What it does |
|---|---|
| Supervisor | Manager delegates to specialists, reviews output |
| Swarm | Dynamic sub-agent scaling (up to 100 agents) |
| Consensus | Majority-vote, unanimous, or weighted voting across agents |
| Handoff | Agent-to-agent transfer with context |
| Router | Instruction/tool-based agent routing |
| Pipeline | Sequential agent composition |
| GSD | Goal-Strategy-Decomposition pattern |
| Team | Role-based team creation with permission isolation |
addConditionalEdges('classify', { map: { positive: 'handle', negative: 'escalate' }, default: 'review' })verifyChain()interrupt() / resume() / fork() — durable checkpoints with DurableExecutor| Capability | What it does |
|---|---|
| Guardrails | PII detection/redaction, prompt injection detection (pattern + heuristic + LLM), content moderation (OpenAI Moderation API), allowlists for tools/hosts/output |
| HITL | Human-in-the-loop approval hooks with interrupt() / resume() |
| Budget enforcement | Per-user, per-session, and global token/cost caps |
| Rate limiting | Sliding-window (in-memory + Redis) |
| Circuit breaker | Provider failure detection and recovery |
| Idempotency | Deduplication of tool calls and agent runs |
| Graceful shutdown | Drain active executions before shutdown |
| Health checks | Readiness, liveness, and dependency probes |
| Secret management | Pluggable backends with live secret watching |
benchmarks/tau-bench/PROTOCOL.mdreplayDataset, diffResults for eval regressionspanToSample converts production traces to eval datasetscreateHttpService with OpenAPI generation, admin API, WebSocket transporttext/event-stream for real-time agent responsesnpx personaforge for quick agent runsOne declarative config turns on authentication, multi-tenant isolation, RBAC, budget enforcement, rate limiting, and durable audit — plus a board-ready compliance dashboard (SOC 2, HIPAA, GDPR, ISO 27001).
import { createAgent } from 'personaforge';
import { createEnterpriseGateway } from 'personaforge/gateway';
import { apiKeyAuth } from 'personaforge/runtime';
import { createSqliteAuditStore, createSqliteRunStore } from 'personaforge/production';
const support = createAgent({ name: 'support', instructions: 'You are a support agent.' });
const billing = createAgent({ name: 'billing', instructions: 'You handle billing questions.' });
const gateway = createEnterpriseGateway({
agents: { support, billing },
auth: apiKeyAuth([process.env.GATEWAY_API_KEY!]),
runStore: createSqliteRunStore('./runs.db'), // ← every run persisted (cost, status, tenant)
maxConcurrency: 25, // ← at most 25 concurrent agent executions
tenants: [
{
id: 'acme',
monthlyBudgetUsd: 500,
maxRpm: 60,
allowedAgents: ['support', 'billing'],
},
],
policy: { monthlyBudgetUsd: 5000, requestTimeoutMs: 60_000 },
auditStore: createSqliteAuditStore('./audit.db'),
});
await gateway.start(8787);
// → http://localhost:8787/compliance (compliance dashboard)
| Capability | What it does |
|---|---|
| Multi-tenant | Per-tenant budgets, rate limits, agent allowlists, RBAC |
| Policy engine | Global + per-tenant USD caps, RPM limits, timeouts |
| Audit trail | Hashed prompts, IPs, costs, tools called — SOC 2 ready |
| Compliance dashboard | /compliance — live SOC 2 / HIPAA / GDPR / ISO 27001 controls |
Built-in AgentOS dashboard served by createControlPlane():
| Tab | What it shows |
|---|---|
| Overview | Session count, eval runs, traces, pending approvals |
| Sessions | Browse with search, view full conversation history |
| Memory | Inspect vector and graph memory stores |
| Evals | Pass/fail rates, score distribution, run history |
| Traces | Waterfall timeline visualization |
| Approvals | HITL queue with approve/reject buttons |
| Knowledge | Document browser with search |
| Chat | Interactive playground with agent selector |
| Graph | DAG workflow visualizer with SVG rendering |
pipe(), batch(), stream(), withRetry(), withFallbacks(), assign()values | updates | messages | debug | custom modesthink / analyze scratchpad toolsonReasoning, result.reasoning, reasoning-delta stream events for Anthropic, Bedrock, Gemini, Ollama, and OpenAI-compatible thinking modelscreateDeepAgent plan-research-synthesize recipe| Primitive | When to use |
|---|---|
| Agent | One model-backed worker can handle the task |
| Team | Specialists should coordinate, delegate, or vote |
| Workflow | Execution path should be staged, deterministic, or branching |
Each layer is optional. Most projects only need a subset.
| From | Guide |
|---|---|
| LangChain | docs/guide/migration-langchain.md |
| Vercel AI SDK | docs/guide/migration-vercel.md |
| CrewAI | docs/guide/migration-crewai.md |
| LangGraph | docs/guide/migration-langgraph.md |
| Mastra | docs/guide/migration-mastra.md |
| Agno | docs/guide/migration-agno.md |
| All frameworks | docs/guide/comparisons.md |
| Trust & reliability | docs/guide/trust.md |
| Metric | Count |
|---|---|
| Source files | 570+ |
| Lines of TypeScript | 112,000+ |
| Test files | 92 |
| Lines of test code | 15,800+ |
| Built-in tools | 120+ (across 20 categories) |
| LLM provider integrations | 30+ native + 300+ via AI SDK adapter |
| Production primitives | 20+ (run store, error taxonomy, concurrency, circuit breaker, rate limiter, ...) |
| Graph DAG engine | 5,200+ lines |
| Entry points (treeshakeable) | 75+ |
Using personaforge in production? Add yourself to ADOPTERS.md.
MIT