<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Charles</title>
    <description>The latest articles on DEV Community by Charles (@mindofcharles).</description>
    <link>https://dev.to/mindofcharles</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3996522%2Fb74eb7fd-4328-4d91-b786-b681fffdf091.jpg</url>
      <title>DEV Community: Charles</title>
      <link>https://dev.to/mindofcharles</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/mindofcharles"/>
    <language>en</language>
    <item>
      <title>AI-Team-Team - A generic dynamic multi-agent collaboration framework</title>
      <dc:creator>Charles</dc:creator>
      <pubDate>Tue, 23 Jun 2026 13:57:43 +0000</pubDate>
      <link>https://dev.to/mindofcharles/ai-team-team-a-generic-dynamic-multi-agent-collaboration-framework-1m6c</link>
      <guid>https://dev.to/mindofcharles/ai-team-team-a-generic-dynamic-multi-agent-collaboration-framework-1m6c</guid>
      <description>&lt;p&gt;With ATT (AI-Team-Team), AIs can freely form teams, define how they interact, how teams collaborate, and create all sorts of incredibly complex hierarchical (or dynamic) relationships.&lt;/p&gt;

&lt;p&gt;Believe me, ATT is very interesting.&lt;/p&gt;

&lt;p&gt;🛠️ &lt;strong&gt;Current Status &amp;amp; Future Plans:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The project is currently a fundamentally complete Python package, through which you can observe some fascinating AI sociological behaviors (it has already helped me brainstorm quite a few great ideas). In the near future, I might launch a simple application for end-users based on ATT.&lt;/p&gt;

&lt;p&gt;Many details are still rough around the edges, and some ideas are still being rolled out step by step. However, I personally believe the core concept is highly intriguing, and I warmly welcome your feedback, suggestions, and contributions 👍&lt;/p&gt;

&lt;p&gt;If you find this project interesting, please support it with a ⭐️ Star! Thank you so very much! 🙏&lt;/p&gt;

&lt;p&gt;👉 &lt;strong&gt;Project Repository&lt;/strong&gt;：&lt;a href="https://github.com/AI-Team-Team/AI-Team-Team" rel="noopener noreferrer"&gt;https://github.com/AI-Team-Team/AI-Team-Team&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  🧬 Topology &amp;amp; Lineage Control
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Tree-like Lineage Spawning&lt;/strong&gt;: Spawns recursive child agent teams (&lt;code&gt;AgentTeam&lt;/code&gt;) at runtime to arbitrary depths, strictly bounded by depth limits to prevent stack overflow.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Autonomous Member Configs&lt;/strong&gt;: Defines dynamic child memberships mapping role presets, custom system instructions, and LLM aliases to shape custom agent personalities.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Dynamic Lineage Migration&lt;/strong&gt;: Permits active teams to request parent-hierarchy migrations, arbitrated by modular strategies with loop/cycle detection and parent notification logs.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Hierarchical Topology Map&lt;/strong&gt;: Injects an ASCII-drawn indented tree map of active teams (displaying purposes, status, and progress metrics in real-time) directly into the agent prompt context.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Global Expert Discovery&lt;/strong&gt;: Automatically appends a directory of all active system experts (names, roles, and profiles) into the agent's identity context to facilitate peer discovery.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Shared-Agent Continuity&lt;/strong&gt;: One &lt;code&gt;Agent&lt;/code&gt; may participate in several teams with one identity and complete memory. Invocation-scoped team/discussion context keeps prompts and team-sensitive tools correctly scoped while the agent's own model calls remain serialized.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Resilient Failover Routing&lt;/strong&gt;: Dynamically hot-swaps exhausted or failing model clients. &lt;code&gt;"auto"&lt;/code&gt; selects from available bindings; &lt;code&gt;"parent"&lt;/code&gt; uses an explicit parent AgentTeam ballot or a Root Agent decision and fails closed.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  🧠 ReAct Loops &amp;amp; Execution Engine
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Bounded ReAct Loops&lt;/strong&gt;: Executes standard Thought/Action/Observation reasoning cycles, capped by max steps to prevent runaway API tokens.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Strict Balanced Action Parser&lt;/strong&gt;: A character-level scanner handles nested delimiters, quotes, triple quotes, escapes, multiline input, Markdown fences, and Unicode before literal-only argument parsing; malformed or unquoted expressions never execute a tool.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Bounded Memory Compression&lt;/strong&gt;: Automates memory pruning by extracting early conversation turns, calling the agent's LLM to generate a &lt;code&gt;*** HISTORICAL SUMMARY ARCHIVE ***&lt;/code&gt;, and retaining a bounded high-fidelity window.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Optional Selective Episodic Memory&lt;/strong&gt;: When explicitly enabled, records one deterministic Agent-owned segment per terminal business turn, queues isolated retrieval-metadata indexing in the background, and lets only that Agent search or temporarily recall its own Memory Cards.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;LLM Adapter Architecture&lt;/strong&gt;: Unifies sync, async, and streaming LLM payloads from various providers (Google, OpenAI, Anthropic) into standard &lt;code&gt;LLMResponse&lt;/code&gt; and &lt;code&gt;ToolCall&lt;/code&gt; formats via the &lt;code&gt;ManagerDefaultClientAdapter&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Atomic Token Budget Circuit Breakers&lt;/strong&gt;: Enforces hard per-model quotas by atomically reserving prompt and maximum output capacity before each request, settling provider usage, refunding unused capacity, and routing failover through the same ledger.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  🗳️ Governance &amp;amp; Inter-Team Communication
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Democratic Voting System&lt;/strong&gt;: Features an asynchronous voting pipeline to add or remove members, requiring unanimous participation and a $\ge 2/3$ agreement majority.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Anonymous Voting&lt;/strong&gt;: Enforces voter anonymity via &lt;code&gt;cast_vote(..., public=False)&lt;/code&gt; which masks voter names as &lt;code&gt;"Anonymous Voter"&lt;/code&gt; in the team prompt context.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Autonomous AgentTeam Communication&lt;/strong&gt;: &lt;code&gt;ATTConfig.communication&lt;/code&gt; selects permissive, parent-approval, or lineage-approval governance. AgentTeams own requests and agreements; Agents act only from invocation-scoped team authority. No member order or creator identity grants communication authority.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  🔒 Context Protection &amp;amp; Safety Gates
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Token-Bounded File Reading&lt;/strong&gt;: Limits model-facing reads by the effective model's content-token budget rather than file size or line count, supports exact continuation inside long lines, and rejects stale file cursors.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Collaborative DocLib Storage&lt;/strong&gt;: Equips teams with built-in document libraries. Access is governed by prefix path ACL permissions (&lt;code&gt;READ&lt;/code&gt;/&lt;code&gt;WRITE&lt;/code&gt;) that inherit recursively downward to subdirectories.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Private Agent DocLibs&lt;/strong&gt;: Gives every registered AI one persistent private workspace (&lt;code&gt;PDL-&amp;lt;agent_id&amp;gt;&lt;/code&gt;). Private files follow a shared AI across teams, remain outside team ACLs and prompts, and enter a team library only through an explicit copy/publish tool.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Role-Neutral Shared Membership&lt;/strong&gt;: Adds an active registered Agent to multiple AgentTeams through &lt;code&gt;existing_members&lt;/code&gt; or stable &lt;code&gt;existing_member_ids&lt;/code&gt;. Each team stores only a membership reference, so joining another team never changes the Agent's identity, role, instructions, model binding, memory, lifecycle, invocation lock, or Private DocLib.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tool Auditor Interception&lt;/strong&gt;: Registers pre-execution interception hooks to audit, vet, approve, or reject specific tool calls (e.g. database safety query check).&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  💾 Persistence &amp;amp; Diagnostics
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Asynchronous SQLite Persistence&lt;/strong&gt;: Serializes changed topology, memory, DocLib, ACL, and governance records through an exclusive cross-process writer lease with one active and one coalesced pending delta, explicit flush, and transactional restore validation.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Supervisory Dialogue Audits&lt;/strong&gt;: A non-participating 3-AI Supervisory Team executes parallel LLM evaluations (Integrity Auditor, Continuity Auditor, Deadlock Auditor) to review round transcripts, recursively escalating anomalies up the tree lineage.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Decoupled Dashboards&lt;/strong&gt;: Dispatches synchronous or asynchronous runtime callbacks (&lt;code&gt;on_status_change&lt;/code&gt;, &lt;code&gt;on_activity_added&lt;/code&gt;, &lt;code&gt;on_log_append&lt;/code&gt;) in order on an isolated background channel, so slow or failing observers cannot block discussions.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(All the features mentioned above have been substantially implemented.)&lt;/p&gt;

</description>
      <category>agentsteam</category>
      <category>ai</category>
      <category>showdev</category>
    </item>
  </channel>
</rss>
