Un framework.
Apps humaines.
Agents intelligents.
Zéro barrière.

Écrivez votre contrat applicatif une fois. Les humains l'utilisent via le navigateur. Les agents AI l'opèrent via des outils. L'agent évolue à chaque exécution.

$ bunx create-capstan-app my-app

Une seule définition defineAPI() crée automatiquement : HTTP JSON API (Hono), MCP Tools (Claude Desktop), A2A Skills (Google Agent-to-Agent), OpenAPI 3.1 Spec.

app/routes/tickets/index.api.ts
import { defineAPI } from "@zauso-ai/capstan-core";
import { z } from "zod";

// One contract — humans use it via HTTP, agents via MCP/A2A
export const GET = defineAPI({
  input: z.object({
    status: z.enum(["open", "closed"]).optional(),
  }),
  output: z.object({
    tickets: z.array(z.object({
      id: z.string(),
      title: z.string(),
      status: z.string(),
    })),
  }),
  description: "List support tickets",
  capability: "read",
  resource: "ticket",
  async handler({ input }) {
    return { tickets: await db.tickets.list(input) };
  },
});
agents/triage.ts
import { createSmartAgent } from "@zauso-ai/capstan-ai";
import { defineSkill } from "@zauso-ai/capstan-ai";

// Smart agent with 12 production features
const agent = createSmartAgent({
  model: "claude-sonnet-4-20250514",
  tools: [listTickets, assignTicket, resolveTicket],
  skills: [triageSkill],
  maxTurns: 20,
  timeout: { total: 120_000, perTool: 30_000 },
  budget: { maxTokens: 100_000 },
  compression: { strategy: "sliding-window" },
});

// Skills give agents strategic guidance
const triageSkill = defineSkill({
  name: "triage",
  when: "ticket needs priority assessment",
  strategy: "Check severity, customer tier, SLA deadline",
});

Pourquoi Capstan

APIs sans barrière

defineAPI() sert HTTP pour les humains ET les outils MCP/A2A pour les agents. Même contrat, zéro code de liaison.

Runtime d'agents intelligents

createSmartAgent() avec 12 fonctionnalités de production : compression, fallback, validation, timeouts, watchdog, budgets.

Couche de compétences

defineSkill() donne aux agents des stratégies de haut niveau. Pas juste des outils — un guidage stratégique pour les problèmes complexes.

Auto-évolution

Les agents apprennent de chaque exécution. Expérience → Stratégie → Compétence. Deviennent plus intelligents au fil du temps.

Web full-stack

React SSR, routage par fichiers, Drizzle ORM, hydratation sélective. Tout ce qu'il faut pour les apps orientées humain.

Sécurité de production

JWT, OAuth, DPoP, SPIFFE/mTLS, limitation de débit, CSRF. Authentification humains ET agents intégrée.

Boucle AI TDD

capstan verify --json. Cascade de vérification en 8 étapes. Les agents AI s'autocorrigent.

Multi-protocole

HTTP, MCP, A2A, OpenAPI depuis une seule définition. Les agents découvrent votre app automatiquement.

Comparaison

FonctionnalitéNext.jsLangChainCapstan
Barrière entre web et agent🧱🧱+
Multi-protocol (HTTP + MCP + A2A)+
Runtime d'agents intelligents++
Couche de compétences + évolution+
React SSR++
File-based routing++
Authentification intégrée (JWT + OAuth + clés API)+
Couche base de données intégrée+
AI TDD verifier+
OpenAPI auto-generation+
Mémoire à long terme~+
Moteur de politiques + workflow d'approbation+

+ intégré ~ partiel non disponible 🧱 barrière totale | Comparaison complète

Démarrage rapide

Construire un agent

  1. Créer
    bunx create-capstan-app my-agent
  2. Définir votre agent
    import { createSmartAgent } from "@zauso-ai/capstan-ai";
    
    const agent = createSmartAgent({
      model: "claude-sonnet-4-20250514",
      tools: [listTickets, assignTicket],
      skills: [triageSkill],
    });
  3. Exécuter
    bunx capstan dev
    # MCP server auto-available for Claude Desktop

Construire une app web

  1. Créer
    bunx create-capstan-app my-app
  2. Développer
    cd my-app && bunx capstan dev
  3. Connecter

    Votre app est en ligne avec tous les endpoints d'agents prêts :

    # Agent manifest
    curl http://localhost:3000/.well-known/capstan.json
    
    # OpenAPI spec
    curl http://localhost:3000/openapi.json
    
    # MCP server (for Claude Desktop / Cursor)
    bunx capstan mcp

Runtime d'agents intelligents

@zauso-ai/capstan-ai fournit le runtime complet d'agents intelligents. createSmartAgent() pour les agents de production, defineSkill() pour le guidage stratégique, et l'auto-évolution qui apprend de chaque exécution.

import { createSmartAgent, defineSkill } from "@zauso-ai/capstan-ai";

// Production-ready agent with 12 built-in features
const agent = createSmartAgent({
  model: "claude-sonnet-4-20250514",
  tools: [searchDocs, createTicket, sendEmail],
  skills: [customerSupport, escalation],
  maxTurns: 30,
  timeout: { total: 120_000, perTool: 30_000 },
  budget: { maxTokens: 200_000 },
  compression: { strategy: "sliding-window" },
  fallback: { model: "claude-haiku-4" },
  validation: { validateToolArgs: true },
  watchdog: { maxConsecutiveErrors: 3 },
});

// Skills evolve from experience
const customerSupport = defineSkill({
  name: "customer-support",
  when: "user has a support question",
  strategy: "Search docs first, then check ticket history, escalate if unresolved",
});

// Agent learns and improves over time
// Experience -> Strategy -> Skill -> Evolution

Explorer la documentation

Licence MIT · Capstan — là où le développement web rencontre l'intelligence des agents.