{"passport":{"unfragile":{"@version":"1.0","version":"2026-05","artifact":{"id":"github-bande-a-bonnot--boucle-framework","slug":"bande-a-bonnot--boucle-framework","name":"Boucle-framework","type":"framework","url":"https://framework.boucle.sh/","page_url":"https://unfragile.ai/bande-a-bonnot--boucle-framework","categories":["ai-agents"],"tags":["agent-framework","ai-agent","autonomous-agent","claude-code","claude-code-hooks","mcp","rust","safety"],"pricing":{"model":"open_source","free":true,"starting_price":null},"status":"active","verified":false},"capabilities":[{"id":"github-bande-a-bonnot--boucle-framework__cap_0","uri":"capability://safety.moderation.deterministic.safety.hook.enforcement.via.pretooluse.posttooluse.protocol","name":"deterministic safety hook enforcement via pretooluse/posttooluse protocol","description":"Intercepts Claude Code tool invocations at the PreToolUse and PostToolUse lifecycle hooks, executing hard-coded Bash/PowerShell scripts that return definitive deny decisions based on file paths, command patterns, and git state. Unlike probabilistic CLAUDE.md rules that degrade with context growth, these hooks enforce boundaries through portable shell scripts requiring only jq, ensuring consistent enforcement across any environment where Claude Code runs.","intents":["I need to prevent Claude Code from modifying sensitive files or running dangerous commands","I want deterministic, non-negotiable safety boundaries that don't degrade over time","I need safety enforcement that works offline without cloud validation"],"best_for":["teams deploying Claude Code in production environments","developers managing autonomous agents with strict security requirements","organizations needing audit-trail compliance for AI-driven code changes"],"limitations":["Hook bypass possible through indirect execution patterns (e.g., writing shell scripts to disk then executing)","Requires explicit hook installation per environment — no automatic propagation","Performance overhead of ~50-200ms per tool invocation due to subprocess spawning"],"requires":["Claude Code with PreToolUse/PostToolUse protocol support","Bash 4.0+ or PowerShell 5.0+","jq 1.6+ for JSON processing in hook scripts"],"input_types":["tool invocation metadata (tool name, arguments, working directory)","file paths and command strings","git repository state"],"output_types":["allow/deny decision","error message explaining denial reason"],"categories":["safety-moderation","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-bande-a-bonnot--boucle-framework__cap_1","uri":"capability://automation.workflow.autonomous.agent.loop.orchestration.with.scheduled.execution","name":"autonomous agent loop orchestration with scheduled execution","description":"A Rust-based loop runner (src/main.rs) that manages the complete lifecycle of autonomous Claude Code execution: reading configuration from boucle.toml, assembling context from memory and plugins, invoking Claude Code in a loop, capturing tool execution results, and persisting state back to the Broca memory system. The runner implements fail-safe semantics, allowing graceful degradation when hooks block operations, and integrates with the Self-Observation Engine (Improve) to enable agents to reflect on their own performance.","intents":["I want Claude Code to run autonomously on a schedule without manual intervention","I need my agent to maintain long-term memory across multiple execution cycles","I want the agent to self-observe and improve its behavior based on past outcomes"],"best_for":["developers building scheduled AI agents (daily digests, monitoring tasks, CI/CD automation)","teams implementing multi-agent systems with persistent state","organizations needing agents that learn from their own execution history"],"limitations":["Loop execution is synchronous — no built-in parallelization of multiple agent instances","Memory assembly adds ~100-300ms per loop iteration due to file I/O and context building","No built-in distributed state management — requires shared filesystem or external coordination for multi-machine deployments"],"requires":["Rust 1.70+ (for building from source) or pre-compiled Boucle binary","Claude Code installed and configured","boucle.toml configuration file in project root","Git repository initialized (for Broca memory system)"],"input_types":["boucle.toml configuration","Broca memory files (Markdown, YAML)","plugin outputs"],"output_types":["loop execution logs","updated Broca memory state","tool invocation results"],"categories":["automation-workflow","planning-reasoning"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-bande-a-bonnot--boucle-framework__cap_10","uri":"capability://automation.workflow.hook.installation.and.enforcement.orchestration.enforce.hooks","name":"hook installation and enforcement orchestration (enforce-hooks)","description":"A Python-based tool that automates the installation, configuration, and enforcement of all Boucle safety hooks across an environment. The enforce-hooks script reads hook specifications, validates prerequisites (Bash/PowerShell version, jq availability), installs hooks to the correct locations, and configures them with project-specific allowlists/blocklists. It also provides an 'enforce' mode that validates all hooks are active before allowing agent execution.","intents":["I need to install all safety hooks at once without manual configuration","I want to ensure hooks are configured consistently across my team","I need to validate hooks are active before running autonomous agents"],"best_for":["teams deploying Boucle to multiple machines or CI/CD environments","developers setting up new projects with Boucle","organizations standardizing safety enforcement across agent deployments"],"limitations":["Installation is idempotent but not atomic — partial failures can leave hooks in inconsistent state","Requires write permissions to hook installation directories — may fail in restricted environments","Configuration is static at install time — runtime hook updates require re-running enforce-hooks","No rollback mechanism — uninstalling hooks requires manual cleanup"],"requires":["Python 3.7+","Bash 4.0+ or PowerShell 5.0+","jq 1.6+","enforce-hooks script (tools/enforce/enforce-hooks.py)","Hook configuration file (boucle.toml or hooks.yaml)"],"input_types":["hook configuration (TOML or YAML)","allowlist/blocklist patterns","installation paths"],"output_types":["installation status report","hook validation results","enforcement decision (allow/deny agent execution)"],"categories":["automation-workflow","safety-moderation"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-bande-a-bonnot--boucle-framework__cap_11","uri":"capability://safety.moderation.known.limitations.database.and.web.interface","name":"known limitations database and web interface","description":"A structured database of known agent limitations, bypass patterns, and mitigations that is accessible through a web interface. The system allows teams to document discovered hook bypasses, edge cases, and limitations in a centralized location, enabling knowledge sharing across agent deployments. The web interface provides search and filtering capabilities to help developers understand what protections are in place and what gaps remain.","intents":["I need to document known limitations and bypass patterns for my team","I want to understand what edge cases my safety hooks don't cover","I need to track mitigations for discovered vulnerabilities"],"best_for":["security teams managing agent deployments and tracking vulnerabilities","developers learning about Boucle's safety model and its limitations","organizations conducting security audits of agent systems"],"limitations":["Database is static and requires manual updates — no automatic detection of new bypass patterns","Web interface is read-only — no built-in workflow for proposing/reviewing new limitations","No integration with vulnerability tracking systems (Jira, GitHub Issues)","Limitations are documented at the framework level — project-specific limitations require separate tracking"],"requires":["Web server to host the interface (included in Boucle distribution)","Read access to limitations database (YAML or JSON files)"],"input_types":["limitation descriptions","bypass patterns","mitigation strategies","search queries"],"output_types":["limitations list (filtered by category, severity, etc.)","mitigation recommendations","web interface pages"],"categories":["safety-moderation","memory-knowledge"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-bande-a-bonnot--boucle-framework__cap_12","uri":"capability://tool.use.integration.mcp.server.integration.for.claude.desktop.broca.mcp","name":"mcp server integration for claude desktop (broca mcp)","description":"An MCP (Model Context Protocol) server that exposes Boucle's Broca memory system and agent capabilities as tools available to Claude Desktop. The server implements standard MCP tool definitions, allowing Claude to query agent memory, trigger agent loops, and inspect execution state directly from the Claude Desktop interface. This enables interactive debugging and manual agent control without requiring command-line access.","intents":["I want to interact with my agent's memory and execution state from Claude Desktop","I need to manually trigger agent loops or inspect execution results without CLI","I want Claude to have direct access to agent state for debugging"],"best_for":["developers using Claude Desktop who want integrated agent management","teams debugging agent behavior through interactive Claude conversations","organizations preferring GUI-based agent interaction over CLI"],"limitations":["MCP server requires separate process — adds ~100-200ms latency per request","No built-in authentication — requires network isolation or firewall rules for security","Tool definitions are static — dynamic tool registration requires server restart","Claude Desktop integration is limited to read-only operations on memory (no direct writes)"],"requires":["Claude Desktop 0.1.0+ with MCP support","Boucle MCP server running (included in Boucle distribution)","Network connectivity between Claude Desktop and MCP server"],"input_types":["MCP tool calls (JSON-RPC)","memory queries","agent control commands"],"output_types":["memory contents (Markdown, YAML)","execution results","agent state"],"categories":["tool-use-integration","memory-knowledge"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-bande-a-bonnot--boucle-framework__cap_13","uri":"capability://automation.workflow.configuration.driven.agent.setup.boucle.toml","name":"configuration-driven agent setup (boucle.toml)","description":"A TOML-based configuration file that defines agent behavior, memory paths, plugin locations, hook policies, and execution schedules. The Boucle loop runner reads boucle.toml at startup, assembling the complete agent context from the configuration. This enables teams to version-control agent configuration alongside code and enables rapid agent setup without code changes.","intents":["I need to configure my agent's behavior without modifying code","I want to version-control agent configuration in git","I need to set up multiple agents with different configurations from the same codebase"],"best_for":["teams managing multiple agent configurations across environments (dev, staging, prod)","developers wanting to version-control agent setup alongside code","organizations needing to audit agent configuration changes"],"limitations":["TOML parsing is strict — syntax errors prevent agent startup with unclear error messages","No support for environment variable interpolation — requires separate templating tool","Configuration is static at startup — runtime changes require agent restart","No schema validation — invalid configuration keys are silently ignored"],"requires":["boucle.toml file in project root","TOML parser (included in Boucle binary)"],"input_types":["TOML configuration file","agent name, memory paths, plugin locations, hook policies"],"output_types":["parsed configuration (internal data structure)","agent context (memory, plugins, hooks)"],"categories":["automation-workflow","data-processing-analysis"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-bande-a-bonnot--boucle-framework__cap_2","uri":"capability://memory.knowledge.git.native.structured.memory.system.broca.with.transparent.state.management","name":"git-native structured memory system (broca) with transparent state management","description":"A memory architecture that stores agent state as standard Markdown and YAML files in the git repository, making agent knowledge and execution history human-readable, version-controlled, and auditable. The Broca system uses a structured schema for memory entries, enabling the Self-Observation Engine to query and update memory programmatically while maintaining git history for debugging and rollback. This approach eliminates the black-box nature of vector databases and enables agents to reason about their own memory.","intents":["I want my agent's memory to be human-readable and auditable","I need to version-control agent state changes and debug execution history","I want the agent to query and reason about its own past experiences"],"best_for":["teams requiring audit trails and compliance documentation for AI-driven decisions","developers debugging agent behavior by inspecting memory state directly","organizations preferring transparent, git-based state over opaque vector stores"],"limitations":["Markdown/YAML parsing adds ~50-150ms per memory query compared to indexed vector databases","No built-in semantic search — memory retrieval is keyword/path-based, not similarity-based","Git repository size grows linearly with agent execution history; requires periodic cleanup or archival","Concurrent writes to memory files can cause merge conflicts in multi-agent scenarios"],"requires":["Git repository initialized in project directory","Write permissions to .boucle/ memory directory","YAML and Markdown parsing libraries (included in Boucle binary)"],"input_types":["agent observations (text, structured data)","execution results","memory queries (path-based, keyword-based)"],"output_types":["Markdown memory files","YAML metadata","git commit history"],"categories":["memory-knowledge","data-processing-analysis"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-bande-a-bonnot--boucle-framework__cap_3","uri":"capability://planning.reasoning.self.observation.engine.improve.for.autonomous.agent.reflection.and.learning","name":"self-observation engine (improve) for autonomous agent reflection and learning","description":"A subsystem that enables agents to query their own Broca memory, analyze past execution outcomes, and generate improvement strategies without human intervention. The Improve engine reads execution logs and memory state, identifies patterns in successes and failures, and updates agent knowledge or strategy documents in the memory system. This creates a feedback loop where agents can reason about their own performance and adapt behavior across execution cycles.","intents":["I want my agent to learn from its own mistakes and improve over time","I need the agent to analyze why certain tasks failed and adjust strategy","I want autonomous agents that can self-correct without human feedback"],"best_for":["teams building long-running autonomous agents that need to improve over weeks/months","developers implementing agents for complex, iterative tasks (code generation, research, planning)","organizations wanting agents that adapt to domain-specific patterns without retraining"],"limitations":["Self-observation can amplify early mistakes if the agent learns incorrect patterns before correction","Requires sufficient execution history to identify meaningful patterns — ineffective for agents with <10 execution cycles","No built-in human-in-the-loop validation — agent improvements are not reviewed before being applied","Memory queries are synchronous and can block loop execution if memory is large (>100MB)"],"requires":["Broca memory system initialized","Execution logs with structured outcome data","Claude Code with sufficient context window to analyze memory (8K+ tokens)"],"input_types":["execution logs","Broca memory state","task outcomes (success/failure)","error messages and stack traces"],"output_types":["improvement strategies (text)","updated memory documents","learned patterns (YAML metadata)"],"categories":["planning-reasoning","memory-knowledge"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-bande-a-bonnot--boucle-framework__cap_4","uri":"capability://safety.moderation.file.based.safety.boundary.enforcement.file.guard.hook","name":"file-based safety boundary enforcement (file-guard hook)","description":"A Bash/PowerShell hook that intercepts file operations (read, write, delete) by pattern-matching against a configurable allowlist/blocklist of file paths. The hook executes as a PreToolUse interceptor, examining the file path argument of operations like 'edit_file' or 'delete_file' and returning a deny decision if the path matches blocked patterns (e.g., /etc/*, .env, secrets/*). This provides granular, filesystem-level protection without requiring kernel-level access controls.","intents":["I need to prevent Claude Code from modifying configuration files, secrets, or system files","I want to restrict agent file operations to a specific project directory","I need to protect sensitive files (credentials, keys) from accidental modification"],"best_for":["developers running agents in shared environments or CI/CD pipelines","teams protecting monorepos where agents should only modify specific subdirectories","organizations with strict file access policies (PCI-DSS, SOC 2)"],"limitations":["Pattern matching is regex-based and can be bypassed with path traversal (e.g., /path/to/../../../etc/passwd)","No support for dynamic allowlists based on file content or metadata — only path-based rules","Symlink following can bypass intended restrictions if not explicitly configured","Performance degrades with large allowlist/blocklist (>1000 patterns) due to regex evaluation"],"requires":["Bash 4.0+ or PowerShell 5.0+","jq 1.6+ for JSON parsing","file-guard hook installed via tools/install.sh or tools/install.ps1"],"input_types":["file path (string)","operation type (read, write, delete)","file content (optional, for validation)"],"output_types":["allow/deny decision","denial reason (path matched blocklist pattern)"],"categories":["safety-moderation","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-bande-a-bonnot--boucle-framework__cap_5","uri":"capability://safety.moderation.command.execution.safety.filtering.bash.guard.hook","name":"command execution safety filtering (bash-guard hook)","description":"A Bash/PowerShell hook that intercepts shell command execution by analyzing the command string before invocation. The hook pattern-matches against a blocklist of dangerous command patterns (e.g., 'rm -rf /', 'sudo', 'curl | bash') and returns a deny decision if the command matches a blocked pattern. This operates at the PreToolUse stage, preventing dangerous commands from ever reaching the shell.","intents":["I need to prevent Claude Code from running destructive commands like rm -rf or format disk","I want to block privilege escalation attempts (sudo, su) in autonomous agents","I need to prevent agents from downloading and executing arbitrary scripts"],"best_for":["teams running agents in production environments with limited blast radius","developers protecting against accidental destructive operations","organizations with strict command execution policies"],"limitations":["Command obfuscation can bypass pattern matching (e.g., 'rm -rf' vs 'r''m -rf' in PowerShell)","No semantic understanding of command intent — cannot distinguish between 'rm /tmp/old' (safe) and 'rm -rf /' (dangerous)","Indirect execution through scripts or environment variables is harder to detect","False positives possible if legitimate commands contain blocked keywords (e.g., 'echo sudo' would be blocked)"],"requires":["Bash 4.0+ or PowerShell 5.0+","jq 1.6+ for JSON parsing","bash-guard hook installed via tools/install.sh or tools/install.ps1"],"input_types":["command string (full shell command)","working directory","environment variables"],"output_types":["allow/deny decision","denial reason (command matched blocklist pattern)"],"categories":["safety-moderation","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-bande-a-bonnot--boucle-framework__cap_6","uri":"capability://safety.moderation.git.repository.safety.enforcement.git.safe.and.branch.guard.hooks","name":"git repository safety enforcement (git-safe and branch-guard hooks)","description":"A pair of hooks that enforce git-specific safety policies: git-safe prevents direct commits to protected branches (main, master, production) and enforces commit message validation, while branch-guard ensures agents only create/delete branches matching approved naming patterns. These hooks operate as PreToolUse interceptors on git commands, examining the branch name and commit message before allowing git operations to proceed.","intents":["I need to prevent agents from committing directly to main/production branches","I want to enforce commit message standards (e.g., ticket numbers, descriptions)","I need to restrict branch creation to approved naming conventions"],"best_for":["teams using agents for code generation with strict git workflows","organizations requiring audit trails for all code changes","developers protecting main branches from accidental autonomous commits"],"limitations":["Hooks operate on git commands invoked through Claude Code tools — direct git CLI invocations bypass hooks","Branch naming patterns are regex-based and can be overly permissive or restrictive","No integration with GitHub/GitLab branch protection rules — requires separate configuration","Commit message validation is pattern-based and cannot enforce semantic commit standards"],"requires":["Git 2.9+ (for hook support)","Bash 4.0+ or PowerShell 5.0+","jq 1.6+ for JSON parsing","git-safe and branch-guard hooks installed"],"input_types":["git command (string)","branch name","commit message","protected branch list"],"output_types":["allow/deny decision","denial reason (branch protected, naming pattern mismatch, etc.)"],"categories":["safety-moderation","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-bande-a-bonnot--boucle-framework__cap_7","uri":"capability://automation.workflow.session.logging.and.worktree.isolation.worktree.guard.and.session.log.hooks","name":"session logging and worktree isolation (worktree-guard and session-log hooks)","description":"A pair of hooks that provide execution isolation and audit trails: worktree-guard ensures agents operate within isolated git worktrees (preventing cross-contamination between concurrent agents), while session-log records all tool invocations, results, and hook decisions to a structured log file. The session-log hook operates as a PostToolUse interceptor, capturing the complete execution context for debugging and compliance auditing.","intents":["I need to run multiple agents concurrently without them interfering with each other's work","I want a complete audit trail of all agent actions for compliance and debugging","I need to replay agent execution to understand what went wrong"],"best_for":["teams running multiple agents in parallel on the same codebase","organizations with compliance requirements (SOC 2, PCI-DSS) needing execution audit trails","developers debugging complex agent failures by replaying execution logs"],"limitations":["Worktree isolation adds ~500ms-2s overhead per agent startup due to git worktree creation","Session logs grow unbounded — requires external log rotation/archival strategy","Worktree cleanup is manual — orphaned worktrees can accumulate if agents crash","Session logs contain sensitive data (file contents, command outputs) and require secure storage"],"requires":["Git 2.15+ (for worktree support)","Bash 4.0+ or PowerShell 5.0+","jq 1.6+ for JSON parsing","Write permissions to .boucle/sessions/ directory"],"input_types":["tool invocation metadata","tool results","hook decisions","execution timestamps"],"output_types":["session log file (JSON Lines format)","git worktree directory","execution audit trail"],"categories":["automation-workflow","safety-moderation"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-bande-a-bonnot--boucle-framework__cap_8","uri":"capability://safety.moderation.single.read.memory.protection.read.once.hook","name":"single-read memory protection (read-once hook)","description":"A safety hook that enforces one-time-read semantics on sensitive files by tracking which files have been read and blocking subsequent reads. The hook operates as a PreToolUse interceptor on file read operations, maintaining a read-once registry in the session state and returning a deny decision if a file has already been read in the current session. This prevents agents from repeatedly accessing secrets or sensitive data.","intents":["I need to ensure agents only read sensitive files (API keys, credentials) once per session","I want to prevent accidental credential leakage through repeated reads","I need to enforce least-privilege access to secrets"],"best_for":["teams managing agents with access to secrets or API keys","developers implementing zero-trust security models for autonomous agents","organizations with strict data access policies"],"limitations":["Read-once state is session-scoped — resets on agent restart, allowing re-reads","No support for partial reads or streaming — entire file must be read in one operation","Cannot distinguish between legitimate repeated reads (e.g., config file) and malicious ones","Requires explicit file registration in read-once policy — easy to forget sensitive files"],"requires":["Bash 4.0+ or PowerShell 5.0+","jq 1.6+ for JSON parsing","read-once hook installed and configured with sensitive file list"],"input_types":["file path (string)","operation type (read)","session ID"],"output_types":["allow/deny decision","denial reason (file already read in session)"],"categories":["safety-moderation","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-bande-a-bonnot--boucle-framework__cap_9","uri":"capability://safety.moderation.safety.audit.and.diagnostics.safety.check.auditor.and.diagnose.plugin","name":"safety audit and diagnostics (safety-check auditor and diagnose plugin)","description":"A comprehensive safety auditing system consisting of two components: safety-check is a Bash script that scans the environment for installed hooks, validates their configuration, and reports on the security posture before agents run; diagnose is a Claude Code plugin that integrates with the auditor to provide real-time diagnostics during agent execution. Together, they enable users to verify safety enforcement is active and identify misconfigured or missing hooks before autonomous execution.","intents":["I need to verify my safety hooks are installed and configured correctly before running agents","I want to diagnose why a safety hook failed or was bypassed","I need to generate a security report showing what protections are active"],"best_for":["teams deploying agents to production and needing pre-flight safety checks","developers debugging hook failures and misconfigurations","organizations requiring security compliance documentation"],"limitations":["Auditor only checks for hook presence and basic configuration — cannot validate hook logic correctness","No runtime monitoring — auditor runs once at startup, missing hooks installed/removed during execution","Diagnose plugin requires Claude Code context — cannot run standalone","Reports are static snapshots — do not reflect real-time hook performance or bypass attempts"],"requires":["Bash 4.0+ or PowerShell 5.0+","jq 1.6+ for JSON parsing","safety-check script (tools/safety-check/check.sh)","Claude Code with diagnose plugin installed (optional)"],"input_types":["environment variables","hook installation paths","hook configuration files"],"output_types":["safety audit report (JSON or text)","hook status (installed, configured, active)","security posture summary"],"categories":["safety-moderation","data-processing-analysis"],"confidence":0.5,"matches":0,"success_rate":0}],"trust":{"score":39,"verified":false,"data_access_risk":"high","permissions":["Claude Code with PreToolUse/PostToolUse protocol support","Bash 4.0+ or PowerShell 5.0+","jq 1.6+ for JSON processing in hook scripts","Rust 1.70+ (for building from source) or pre-compiled Boucle binary","Claude Code installed and configured","boucle.toml configuration file in project root","Git repository initialized (for Broca memory system)","Python 3.7+","jq 1.6+","enforce-hooks script (tools/enforce/enforce-hooks.py)"],"failure_modes":["Hook bypass possible through indirect execution patterns (e.g., writing shell scripts to disk then executing)","Requires explicit hook installation per environment — no automatic propagation","Performance overhead of ~50-200ms per tool invocation due to subprocess spawning","Loop execution is synchronous — no built-in parallelization of multiple agent instances","Memory assembly adds ~100-300ms per loop iteration due to file I/O and context building","No built-in distributed state management — requires shared filesystem or external coordination for multi-machine deployments","Installation is idempotent but not atomic — partial failures can leave hooks in inconsistent state","Requires write permissions to hook installation directories — may fail in restricted environments","Configuration is static at install time — runtime hook updates require re-running enforce-hooks","No rollback mechanism — uninstalling hooks requires manual cleanup","builder identity is not verified yet","no observed match outcomes yet"],"rank_breakdown":{"adoption":0.16045344345959792,"quality":0.5,"ecosystem":0.6000000000000001,"match_graph":0.25,"freshness":0.75,"weights":{"adoption":0.3,"quality":0.2,"ecosystem":0.15,"match_graph":0.23,"freshness":0.12}},"observed_outcomes":{"matches":0,"success_rate":0,"avg_confidence":0,"top_intents":[],"last_matched_at":null},"maintenance":{"status":"active","updated_at":"2026-05-24T12:16:21.549Z","last_scraped_at":"2026-05-03T13:57:09.058Z","last_commit":"2026-04-16T18:16:33Z"},"community":{"stars":89,"forks":6,"weekly_downloads":null,"model_downloads":null,"model_likes":null}},"distribution":{"claim_url":"https://unfragile.ai/submit?claim=bande-a-bonnot--boucle-framework","compare_url":"https://unfragile.ai/compare?artifact=bande-a-bonnot--boucle-framework"}},"signature":"dpyFdFzm1TqgstR32pWb2zGR3k82lW2r2JOuQEyLMQuCI/O1yaaCkbnJdngcH8/yyIfh+/dHMWRvZOirHpZiDQ==","signedAt":"2026-06-23T03:32:09.288Z","signedBy":"unfragile.ai","version":1},"_links":{"self":"https://unfragile.ai/api/v1/passport/bande-a-bonnot--boucle-framework","artifact":"https://unfragile.ai/bande-a-bonnot--boucle-framework","verify":"https://unfragile.ai/api/v1/verify?slug=bande-a-bonnot--boucle-framework","publicKey":"https://unfragile.ai/api/v1/trust-passport-public-key","spec":"https://unfragile.ai/trust","schema":"https://unfragile.ai/schema.json","docs":"https://unfragile.ai/docs"}}