Framework-ul pentru construirea agenților
npx hazeloft init agentul-meuCa Next.js pentru aplicații web, dar pentru agenți. Markdown pentru instrucțiuni și abilități, TypeScript pentru unelte. Durabil din start.
Un agent este un director
Definește instrucțiuni și abilități în Markdown, unelte în TypeScript, apoi lansează. Framework-ul compilează directorul, conectează workflow-uri durabile și leagă canalele.
Un fișier instructions.md este un agent complet. Descrie-i rolul în Markdown, apoi rulează hazeloft.
# IdentitateEști un asistent meteo expert.Poți afla vremea pentru oriceoraș din lume.Hazeloft folosește un model implicit. Adaugă agent.ts când vrei să alegi un model sau să configurezi runtime-ul.
import { defineAgent } from "hazeloft"; export default defineAgent({ model: "anthropic/claude-opus-4-8",});Abilitățile sunt playbook-uri Markdown încărcate când sunt relevante. Agentul primește ghidare focalizată fără s-o care în fiecare prompt.
---description: Cercetează subiecte noi---Când sarcina e nouă sau ambiguă,adună dovezi mai întâi, apoi răspunde.Adaugă un fișier TypeScript în tools/ și modelul îl poate apela. Numele fișierului devine numele uneltei. Fără înregistrare.
import { defineTool } from "hazeloft/tools";import { z } from "zod"; export default defineTool({ description: "Află vremea pentru un oraș", inputSchema: z.object({ cityName: z.string(), }), async execute(input) { const res = await fetch( `${process.env.WEATHER_API_URL}/current?city=${input.cityName}` ); const data = await res.json(); return data.current_condition[0]; },});Fiecare agent include un sandbox izolat și unelte de fișiere. Adaugă sandbox/sandbox.ts ca să alegi un backend sau să-i personalizezi setup-ul.
import { defineSandbox, hazeloftSandboxBackend,} from "hazeloft/sandbox"; export default defineSandbox({ backend: hazeloftSandboxBackend({ runtime: "node24", }),});Adaugă fișiere de canal ca să folosești același agent în Slack, Discord, Teams sau pe web.
import { connectSlackCredentials } from "hazeloft/connect";import { slackChannel } from "hazeloft/channels/slack"; export default slackChannel({ credentials: connectSlackCredentials("slack/agentul-meu"),});Conexiunile gestionează autentificarea pentru servicii ca GitHub, Stripe și Linear. Uneltele le pot apela fără să gestioneze token-uri.
import { connect } from "hazeloft/connect";import { defineMcpClientConnection } from "hazeloft/connections"; export default defineMcpClientConnection({ url: "https://mcp.linear.app/sse", description: "Workspace Linear: issue-uri, proiecte, cicluri și comentarii.", auth: connect("linear"),});Adaugă subagenți pentru muncă specializată. Agentul principal deleagă sarcini și combină rezultatele.
import { defineAgent } from "hazeloft"; export default defineAgent({ description: "Investighează întrebări", model: "anthropic/claude-opus-4-8",});Programările rulează agenții automat pentru job-uri ca rapoarte zilnice și digest-uri săptămânale. Munca continuă durabil, fără o sesiune activă.
---cron: "0 8 * * *"---Trimite utilizatorului un rezumatmeteo zilnic pentru orașele salvate.Construit pe primitivele AI Hazeloft
AI Gateway pentru apeluri de model, medii izolate, workflow-uri durabile și conectori. Toată infrastructura critică pentru agenți funcționează din prima, fără să lipești soluții punctuale.
Tot ce-ți trebuie pentru agenți în producție
Guvernanță enterprise, observabilitate și compute izolat vin din start. Concentrează-te pe construit, nu pe infrastructură.
- Execuție durabilăWorkflow-urile supraviețuiesc la crash-uri și reporniri. Fiecare pas e salvat. Agenții așteaptă în pauză și reiau la următorul mesaj.
- Compute izolatAgenții pornesc VM-uri izolate la cerere. Acces la sistemul de fișiere, execuție bash și rularea codului, totul complet izolat.
- Livrare multi-canalUn singur cod de agent se lansează pe web chat, Slack, API, cron, CLI și aplicații proprii.
- Om în buclăUneltele care cer confirmare declanșează porți de aprobare. Sesiunile așteaptă până la rezolvare, apoi reiau fără cusur.
- SubagențiDeleagă munca specializată către agenți-copil cu propriile prompturi, unelte și sandbox.
- EvaluăriDefinește suite de teste cu bareme de scor. Rulează evaluări la fiecare lansare și pe program.