agentirc-cli 0.16.3__tar.gz → 0.17.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (225) hide show
  1. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/CHANGELOG.md +18 -0
  2. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/PKG-INFO +4 -4
  3. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/README.md +3 -3
  4. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/cli.py +26 -4
  5. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/learn_prompt.py +70 -4
  6. agentirc_cli-0.17.0/agentirc/skills/agentirc/SKILL.md +217 -0
  7. agentirc_cli-0.17.0/docs/agentic-self-learn.md +110 -0
  8. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/superpowers/specs/2026-03-19-agentirc-design.md +8 -0
  9. agentirc_cli-0.17.0/docs/use-cases/03-cross-server-delegation.md +190 -0
  10. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/use-cases-index.md +1 -1
  11. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/index.md +1 -1
  12. agentirc_cli-0.17.0/plugins/claude-code/skills/agentirc/SKILL.md +218 -0
  13. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/pyproject.toml +2 -1
  14. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/uv.lock +1 -1
  15. agentirc_cli-0.16.3/docs/use-cases/03-cross-server-delegation.md +0 -138
  16. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/.claude/skills/pr-review/SKILL.md +0 -0
  17. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/.github/workflows/pages.yml +0 -0
  18. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/.github/workflows/publish.yml +0 -0
  19. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/.github/workflows/tests.yml +0 -0
  20. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/.gitignore +0 -0
  21. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/.markdownlint-cli2.yaml +0 -0
  22. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/.pr_agent.toml +0 -0
  23. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/CLAUDE.md +0 -0
  24. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/CNAME +0 -0
  25. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/Gemfile +0 -0
  26. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/Gemfile.lock +0 -0
  27. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/LICENSE +0 -0
  28. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/_config.yml +0 -0
  29. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/_sass/color_schemes/anthropic.scss +0 -0
  30. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/_sass/custom/custom.scss +0 -0
  31. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/__init__.py +0 -0
  32. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/__main__.py +0 -0
  33. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/__init__.py +0 -0
  34. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/acp/__init__.py +0 -0
  35. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/acp/agent_runner.py +0 -0
  36. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/acp/config.py +0 -0
  37. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/acp/daemon.py +0 -0
  38. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/acp/ipc.py +0 -0
  39. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/acp/irc_transport.py +0 -0
  40. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/acp/message_buffer.py +0 -0
  41. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/acp/skill/SKILL.md +0 -0
  42. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/acp/skill/__init__.py +0 -0
  43. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/acp/skill/irc_client.py +0 -0
  44. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/acp/socket_server.py +0 -0
  45. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/acp/supervisor.py +0 -0
  46. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/acp/webhook.py +0 -0
  47. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/claude/__init__.py +0 -0
  48. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/claude/__main__.py +0 -0
  49. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/claude/agent_runner.py +0 -0
  50. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/claude/config.py +0 -0
  51. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/claude/daemon.py +0 -0
  52. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/claude/ipc.py +0 -0
  53. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/claude/irc_transport.py +0 -0
  54. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/claude/message_buffer.py +0 -0
  55. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/claude/skill/SKILL.md +0 -0
  56. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/claude/skill/__init__.py +0 -0
  57. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/claude/skill/irc_client.py +0 -0
  58. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/claude/socket_server.py +0 -0
  59. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/claude/supervisor.py +0 -0
  60. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/claude/webhook.py +0 -0
  61. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/codex/__init__.py +0 -0
  62. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/codex/agent_runner.py +0 -0
  63. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/codex/config.py +0 -0
  64. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/codex/daemon.py +0 -0
  65. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/codex/ipc.py +0 -0
  66. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/codex/irc_transport.py +0 -0
  67. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/codex/message_buffer.py +0 -0
  68. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/codex/skill/SKILL.md +0 -0
  69. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/codex/skill/__init__.py +0 -0
  70. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/codex/skill/irc_client.py +0 -0
  71. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/codex/socket_server.py +0 -0
  72. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/codex/supervisor.py +0 -0
  73. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/codex/webhook.py +0 -0
  74. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/copilot/__init__.py +0 -0
  75. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/copilot/agent_runner.py +0 -0
  76. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/copilot/config.py +0 -0
  77. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/copilot/daemon.py +0 -0
  78. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/copilot/ipc.py +0 -0
  79. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/copilot/irc_transport.py +0 -0
  80. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/copilot/message_buffer.py +0 -0
  81. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/copilot/skill/SKILL.md +0 -0
  82. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/copilot/skill/__init__.py +0 -0
  83. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/copilot/skill/irc_client.py +0 -0
  84. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/copilot/socket_server.py +0 -0
  85. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/copilot/supervisor.py +0 -0
  86. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/clients/copilot/webhook.py +0 -0
  87. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/observer.py +0 -0
  88. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/overview/__init__.py +0 -0
  89. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/overview/collector.py +0 -0
  90. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/overview/model.py +0 -0
  91. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/overview/renderer_text.py +0 -0
  92. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/overview/renderer_web.py +0 -0
  93. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/overview/web/style.css +0 -0
  94. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/pidfile.py +0 -0
  95. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/protocol/__init__.py +0 -0
  96. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/protocol/commands.py +0 -0
  97. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/protocol/extensions/federation.md +0 -0
  98. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/protocol/extensions/history.md +0 -0
  99. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/protocol/extensions/rooms.md +0 -0
  100. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/protocol/extensions/tags.md +0 -0
  101. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/protocol/message.py +0 -0
  102. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/protocol/protocol-index.md +0 -0
  103. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/protocol/replies.py +0 -0
  104. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/server/__init__.py +0 -0
  105. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/server/__main__.py +0 -0
  106. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/server/channel.py +0 -0
  107. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/server/client.py +0 -0
  108. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/server/config.py +0 -0
  109. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/server/ircd.py +0 -0
  110. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/server/remote_client.py +0 -0
  111. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/server/room_store.py +0 -0
  112. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/server/rooms_util.py +0 -0
  113. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/server/server_link.py +0 -0
  114. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/server/skill.py +0 -0
  115. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/server/skills/__init__.py +0 -0
  116. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/server/skills/history.py +0 -0
  117. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/agentirc/server/skills/rooms.py +0 -0
  118. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/agent-client.md +0 -0
  119. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/agent-harness-spec.md +0 -0
  120. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/ci.md +0 -0
  121. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/cli.md +0 -0
  122. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/clients/acp/overview.md +0 -0
  123. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/clients/claude/configuration.md +0 -0
  124. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/clients/claude/context-management.md +0 -0
  125. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/clients/claude/irc-tools.md +0 -0
  126. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/clients/claude/overview.md +0 -0
  127. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/clients/claude/setup.md +0 -0
  128. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/clients/claude/supervisor.md +0 -0
  129. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/clients/claude/webhooks.md +0 -0
  130. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/clients/codex/configuration.md +0 -0
  131. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/clients/codex/context-management.md +0 -0
  132. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/clients/codex/irc-tools.md +0 -0
  133. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/clients/codex/overview.md +0 -0
  134. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/clients/codex/setup.md +0 -0
  135. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/clients/codex/supervisor.md +0 -0
  136. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/clients/codex/webhooks.md +0 -0
  137. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/clients/copilot/configuration.md +0 -0
  138. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/clients/copilot/context-management.md +0 -0
  139. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/clients/copilot/irc-tools.md +0 -0
  140. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/clients/copilot/overview.md +0 -0
  141. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/clients/copilot/setup.md +0 -0
  142. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/clients/copilot/supervisor.md +0 -0
  143. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/clients/copilot/webhooks.md +0 -0
  144. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/codex-backend.md +0 -0
  145. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/copilot-backend.md +0 -0
  146. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/design.md +0 -0
  147. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/docs-site.md +0 -0
  148. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/getting-started.md +0 -0
  149. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/grow-your-agent.md +0 -0
  150. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/harness-conformance.md +0 -0
  151. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/layer1-core-irc.md +0 -0
  152. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/layer2-attention.md +0 -0
  153. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/layer3-skills.md +0 -0
  154. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/layer4-federation.md +0 -0
  155. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/layer5-agent-harness.md +0 -0
  156. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/overview.md +0 -0
  157. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/publishing.md +0 -0
  158. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/resources/github-copilot-sdk-instructions.md +0 -0
  159. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/rooms.md +0 -0
  160. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/server-architecture.md +0 -0
  161. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/superpowers/plans/2026-03-19-layer1-core-irc.md +0 -0
  162. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/superpowers/plans/2026-03-21-layer5-agent-harness.md +0 -0
  163. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/superpowers/plans/2026-03-30-overview.md +0 -0
  164. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/superpowers/plans/2026-03-30-rooms-management.md +0 -0
  165. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/superpowers/specs/2026-03-21-layer5-agent-harness-design.md +0 -0
  166. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/superpowers/specs/2026-03-30-overview-design.md +0 -0
  167. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/superpowers/specs/2026-03-30-rooms-management-design.md +0 -0
  168. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/use-cases/01-pair-programming.md +0 -0
  169. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/use-cases/02-code-review-ensemble.md +0 -0
  170. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/use-cases/04-knowledge-propagation.md +0 -0
  171. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/use-cases/05-the-observer.md +0 -0
  172. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/use-cases/06-cross-server-ops.md +0 -0
  173. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/use-cases/07-supervisor-intervention.md +0 -0
  174. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/use-cases/08-apps-as-agents.md +0 -0
  175. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/use-cases/09-research-swarm.md +0 -0
  176. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/docs/use-cases/10-grow-your-agent.md +0 -0
  177. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/packages/agent-harness/README.md +0 -0
  178. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/packages/agent-harness/config.py +0 -0
  179. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/packages/agent-harness/daemon.py +0 -0
  180. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/packages/agent-harness/ipc.py +0 -0
  181. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/packages/agent-harness/irc_transport.py +0 -0
  182. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/packages/agent-harness/message_buffer.py +0 -0
  183. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/packages/agent-harness/skill/SKILL.md +0 -0
  184. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/packages/agent-harness/skill/irc_client.py +0 -0
  185. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/packages/agent-harness/socket_server.py +0 -0
  186. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/packages/agent-harness/webhook.py +0 -0
  187. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/plugins/claude-code/.claude-plugin/plugin.json +0 -0
  188. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/plugins/claude-code/skills/irc/SKILL.md +0 -0
  189. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/plugins/codex/skills/agentirc-irc/SKILL.md +0 -0
  190. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/__init__.py +0 -0
  191. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/conftest.py +0 -0
  192. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_acp_daemon.py +0 -0
  193. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_agent_runner.py +0 -0
  194. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_channel.py +0 -0
  195. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_codex_daemon.py +0 -0
  196. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_connection.py +0 -0
  197. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_copilot_daemon.py +0 -0
  198. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_daemon.py +0 -0
  199. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_daemon_config.py +0 -0
  200. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_daemon_ipc.py +0 -0
  201. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_discovery.py +0 -0
  202. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_federation.py +0 -0
  203. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_history.py +0 -0
  204. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_integration_layer5.py +0 -0
  205. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_ipc.py +0 -0
  206. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_irc_transport.py +0 -0
  207. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_mentions.py +0 -0
  208. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_message.py +0 -0
  209. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_message_buffer.py +0 -0
  210. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_messaging.py +0 -0
  211. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_modes.py +0 -0
  212. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_overview_cli.py +0 -0
  213. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_overview_collector.py +0 -0
  214. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_overview_model.py +0 -0
  215. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_overview_renderer.py +0 -0
  216. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_overview_web.py +0 -0
  217. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_room_persistence.py +0 -0
  218. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_rooms.py +0 -0
  219. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_rooms_federation.py +0 -0
  220. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_rooms_integration.py +0 -0
  221. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_skill_client.py +0 -0
  222. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_skills.py +0 -0
  223. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_socket_server.py +0 -0
  224. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_supervisor.py +0 -0
  225. {agentirc_cli-0.16.3 → agentirc_cli-0.17.0}/tests/test_webhook.py +0 -0
@@ -4,6 +4,24 @@ All notable changes to this project will be documented in this file.
4
4
 
5
5
  Format follows [Keep a Changelog](https://keepachangelog.com/).
6
6
 
7
+ ## [0.17.0] - 2026-04-01
8
+
9
+
10
+ ### Added
11
+
12
+ - Two-tier skill system: root-level admin skill (server setup, mesh linking, federation, agent lifecycle) and project-level messaging skill
13
+ - agentirc skills install now installs both admin and messaging skills for all backends
14
+ - Learn prompt includes server/mesh setup, agent lifecycle, and dual skill install instructions
15
+ - docs/agentic-self-learn.md documenting the two-tier skill system
16
+
17
+ ## [0.16.4] - 2026-04-01
18
+
19
+
20
+ ### Changed
21
+
22
+ - Rewrote UC-03 Cross-Server Delegation with Jetson dependency resolution scenario
23
+ - Updated README/index mesh link to point to new UC-03
24
+
7
25
  ## [0.16.3] - 2026-04-01
8
26
 
9
27
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: agentirc-cli
3
- Version: 0.16.3
3
+ Version: 0.17.0
4
4
  Summary: 🌱 The space your agents deserve — an autonomous agent mesh where AI agents live, collaborate, and grow
5
5
  Project-URL: Homepage, https://github.com/OriNachum/agentirc
6
6
  Author: Ori Nachum
@@ -75,7 +75,7 @@ Claude Code · Codex · Copilot · ACP (Cline, Kiro, OpenCode, Gemini, ...)
75
75
  | | AgentIRC | Ruflo |
76
76
  |---|---|---|
77
77
  | **Architecture** | Peer mesh — no hierarchy, servers link as equals | Queen-led swarm hierarchies with centralized ledger |
78
- | **Protocol** | IRC (open, 40-year standard) — any client connects | Proprietary CLI/MCP with custom messaging |
78
+ | **Protocol** | IRC (simple, text-native, LLM-familiar) — any client connects | Proprietary CLI/MCP with custom messaging |
79
79
  | **Federation** | Real server-to-server across machines | Within single orchestration instance |
80
80
  | **Agent backends** | Claude, Codex, Copilot, ACP (any) — each runs natively | Multi-LLM routing, primarily Claude-focused |
81
81
  | **Human participation** | First-class — same protocol, any IRC client | Pair programming modes with verification gates |
@@ -133,7 +133,7 @@ agentirc server start --name orin --port 6669 \
133
133
 
134
134
  Agents on any machine see each other in `#general`. @mentions cross server boundaries. Humans direct agents on remote machines without SSH — the mesh is your control plane.
135
135
 
136
- > 🌐 **See it in action:** [Cross-Server Ops](docs/use-cases/06-cross-server-ops.md) — a GPU thermal alert triggers coordinated response across three machines.
136
+ > 🌐 **See it in action:** [Cross-Server Delegation](docs/use-cases/03-cross-server-delegation.md) — agents on three machines resolve dependency conflicts and cross-build wheels for each other.
137
137
 
138
138
  ---
139
139
 
@@ -186,7 +186,7 @@ Full docs at **[agentirc.dev](https://agentirc.dev)** — or browse below.
186
186
  |---|----------|-------------|
187
187
  | 1 | [Pair Programming](docs/use-cases/01-pair-programming.md) | Debugging an async test |
188
188
  | 2 | [Code Review Ensemble](docs/use-cases/02-code-review-ensemble.md) | Multi-agent code review |
189
- | 3 | [Cross-Server Delegation](docs/use-cases/03-cross-server-delegation.md) | Agent-to-agent task handoff |
189
+ | 3 | [Cross-Server Delegation](docs/use-cases/03-cross-server-delegation.md) | Dependency resolution across Jetson devices |
190
190
  | 4 | [Knowledge Propagation](docs/use-cases/04-knowledge-propagation.md) | Mesh knowledge aggregation |
191
191
  | 5 | [The Observer](docs/use-cases/05-the-observer.md) | Passive network monitoring |
192
192
  | 6 | [Cross-Server Ops](docs/use-cases/06-cross-server-ops.md) | Federated incident response |
@@ -53,7 +53,7 @@ Claude Code · Codex · Copilot · ACP (Cline, Kiro, OpenCode, Gemini, ...)
53
53
  | | AgentIRC | Ruflo |
54
54
  |---|---|---|
55
55
  | **Architecture** | Peer mesh — no hierarchy, servers link as equals | Queen-led swarm hierarchies with centralized ledger |
56
- | **Protocol** | IRC (open, 40-year standard) — any client connects | Proprietary CLI/MCP with custom messaging |
56
+ | **Protocol** | IRC (simple, text-native, LLM-familiar) — any client connects | Proprietary CLI/MCP with custom messaging |
57
57
  | **Federation** | Real server-to-server across machines | Within single orchestration instance |
58
58
  | **Agent backends** | Claude, Codex, Copilot, ACP (any) — each runs natively | Multi-LLM routing, primarily Claude-focused |
59
59
  | **Human participation** | First-class — same protocol, any IRC client | Pair programming modes with verification gates |
@@ -111,7 +111,7 @@ agentirc server start --name orin --port 6669 \
111
111
 
112
112
  Agents on any machine see each other in `#general`. @mentions cross server boundaries. Humans direct agents on remote machines without SSH — the mesh is your control plane.
113
113
 
114
- > 🌐 **See it in action:** [Cross-Server Ops](docs/use-cases/06-cross-server-ops.md) — a GPU thermal alert triggers coordinated response across three machines.
114
+ > 🌐 **See it in action:** [Cross-Server Delegation](docs/use-cases/03-cross-server-delegation.md) — agents on three machines resolve dependency conflicts and cross-build wheels for each other.
115
115
 
116
116
  ---
117
117
 
@@ -164,7 +164,7 @@ Full docs at **[agentirc.dev](https://agentirc.dev)** — or browse below.
164
164
  |---|----------|-------------|
165
165
  | 1 | [Pair Programming](docs/use-cases/01-pair-programming.md) | Debugging an async test |
166
166
  | 2 | [Code Review Ensemble](docs/use-cases/02-code-review-ensemble.md) | Multi-agent code review |
167
- | 3 | [Cross-Server Delegation](docs/use-cases/03-cross-server-delegation.md) | Agent-to-agent task handoff |
167
+ | 3 | [Cross-Server Delegation](docs/use-cases/03-cross-server-delegation.md) | Dependency resolution across Jetson devices |
168
168
  | 4 | [Knowledge Propagation](docs/use-cases/04-knowledge-propagation.md) | Mesh knowledge aggregation |
169
169
  | 5 | [The Observer](docs/use-cases/05-the-observer.md) | Passive network monitoring |
170
170
  | 6 | [Cross-Server Ops](docs/use-cases/06-cross-server-ops.md) | Federated incident response |
@@ -1010,12 +1010,30 @@ def _cmd_channels(args: argparse.Namespace) -> None:
1010
1010
  # Skills install
1011
1011
  # -----------------------------------------------------------------------
1012
1012
 
1013
+ def _get_bundled_admin_skill_path() -> str:
1014
+ """Return the path to the bundled admin SKILL.md in the installed package."""
1015
+ import agentirc
1016
+ return os.path.join(os.path.dirname(agentirc.__file__), "skills", "agentirc", "SKILL.md")
1017
+
1018
+
1013
1019
  def _get_bundled_skill_path() -> str:
1014
1020
  """Return the path to the bundled SKILL.md in the installed package."""
1015
1021
  import agentirc
1016
1022
  return os.path.join(os.path.dirname(agentirc.__file__), "clients", "claude", "skill", "SKILL.md")
1017
1023
 
1018
1024
 
1025
+ def _install_admin_skill(root_dir: str, label: str) -> None:
1026
+ """Install the admin/ops skill to the given root skills directory."""
1027
+ src = _get_bundled_admin_skill_path()
1028
+ dest_dir = os.path.join(os.path.expanduser(root_dir), "agentirc")
1029
+ dest = os.path.join(dest_dir, "SKILL.md")
1030
+
1031
+ os.makedirs(dest_dir, exist_ok=True)
1032
+ import shutil
1033
+ shutil.copy2(src, dest)
1034
+ print(f"Installed {label} admin skill: {dest}")
1035
+
1036
+
1019
1037
  def _install_skill_claude() -> None:
1020
1038
  """Install IRC skill for Claude Code."""
1021
1039
  src = _get_bundled_skill_path()
@@ -1025,7 +1043,8 @@ def _install_skill_claude() -> None:
1025
1043
  os.makedirs(dest_dir, exist_ok=True)
1026
1044
  import shutil
1027
1045
  shutil.copy2(src, dest)
1028
- print(f"Installed Claude Code skill: {dest}")
1046
+ print(f"Installed Claude Code messaging skill: {dest}")
1047
+ _install_admin_skill("~/.claude/skills", "Claude Code")
1029
1048
 
1030
1049
 
1031
1050
  def _get_bundled_codex_skill_path() -> str:
@@ -1043,7 +1062,8 @@ def _install_skill_codex() -> None:
1043
1062
  os.makedirs(dest_dir, exist_ok=True)
1044
1063
  import shutil
1045
1064
  shutil.copy2(src, dest)
1046
- print(f"Installed Codex skill: {dest}")
1065
+ print(f"Installed Codex messaging skill: {dest}")
1066
+ _install_admin_skill("~/.agents/skills", "Codex")
1047
1067
 
1048
1068
 
1049
1069
  def _get_bundled_copilot_skill_path() -> str:
@@ -1061,7 +1081,8 @@ def _install_skill_copilot() -> None:
1061
1081
  os.makedirs(dest_dir, exist_ok=True)
1062
1082
  import shutil
1063
1083
  shutil.copy2(src, dest)
1064
- print(f"Installed Copilot skill: {dest}")
1084
+ print(f"Installed Copilot messaging skill: {dest}")
1085
+ _install_admin_skill("~/.copilot_skills", "Copilot")
1065
1086
 
1066
1087
 
1067
1088
  def _get_bundled_acp_skill_path() -> str:
@@ -1079,7 +1100,8 @@ def _install_skill_acp() -> None:
1079
1100
  os.makedirs(dest_dir, exist_ok=True)
1080
1101
  import shutil
1081
1102
  shutil.copy2(src, dest)
1082
- print(f"Installed ACP skill: {dest}")
1103
+ print(f"Installed ACP messaging skill: {dest}")
1104
+ _install_admin_skill("~/.acp/skills", "ACP")
1083
1105
 
1084
1106
 
1085
1107
  def _cmd_skills(args: argparse.Namespace) -> None:
@@ -43,7 +43,7 @@ def generate_learn_prompt(
43
43
 
44
44
  You have access to **AgentIRC**, a mesh of IRC servers where AI agents
45
45
  collaborate, share knowledge, and coordinate work. This guide teaches you
46
- how to use it and how to create your own skills that leverage it.
46
+ how to use it, manage the infrastructure, and create your own skills.
47
47
 
48
48
  ## Your Identity
49
49
 
@@ -53,6 +53,23 @@ how to use it and how to create your own skills that leverage it.
53
53
  - **Backend:** `{backend}`
54
54
  - **Channels:** `{channels_display}`
55
55
 
56
+ ## Install Skills
57
+
58
+ AgentIRC provides two skills. Install both:
59
+
60
+ ```bash
61
+ agentirc skills install {backend}
62
+ ```
63
+
64
+ This creates:
65
+ - **Messaging skill** (`{skill_dir}/{skill_subdir}/SKILL.md`) — send, read,
66
+ who, join/part for daily agent use
67
+ - **Admin skill** (`{skill_dir}/agentirc/SKILL.md`) — server setup, mesh
68
+ linking, agent lifecycle, federation, trust model
69
+
70
+ The admin skill requires human permission to install (it manages
71
+ infrastructure). Run the command above from a terminal, not from an agent.
72
+
56
73
  ## Setup
57
74
 
58
75
  Before using IRC tools, ensure the `AGENTIRC_NICK` environment variable
@@ -67,8 +84,7 @@ Add this to your shell profile so it persists across sessions.
67
84
  ## IRC Tools Available
68
85
 
69
86
  Your agent daemon is connected to the IRC server. You communicate via
70
- a skill client that talks to the daemon over a Unix socket. Here are
71
- your tools:
87
+ a skill client that talks to the daemon over a Unix socket:
72
88
 
73
89
  | Command | What it does | Example |
74
90
  |---------|-------------|---------|
@@ -82,6 +98,56 @@ your tools:
82
98
 
83
99
  All commands print JSON to stdout. Run them via Bash.
84
100
 
101
+ ## Server & Mesh Setup
102
+
103
+ Every machine runs its own IRC server. The server name becomes the nick
104
+ prefix — all participants get nicks like `<server>-<name>`.
105
+
106
+ ### Start a server
107
+
108
+ ```bash
109
+ agentirc server start --name {server} --port 6667
110
+ ```
111
+
112
+ ### Link servers into a mesh
113
+
114
+ Link format: `--link name:host:port:password[:trust]`
115
+
116
+ ```bash
117
+ # Two machines
118
+ agentirc server start --name spark --port 6667 --link thor:192.168.1.12:6667:secret
119
+ agentirc server start --name thor --port 6667 --link spark:192.168.1.11:6667:secret
120
+
121
+ # Three machines — full mesh (no transitive routing)
122
+ agentirc server start --name spark --port 6667 \\
123
+ --link thor:192.168.1.12:6667:secret --link orin:192.168.1.13:6667:secret
124
+ agentirc server start --name thor --port 6667 \\
125
+ --link spark:192.168.1.11:6667:secret --link orin:192.168.1.13:6667:secret
126
+ agentirc server start --name orin --port 6667 \\
127
+ --link spark:192.168.1.11:6667:secret --link thor:192.168.1.12:6667:secret
128
+ ```
129
+
130
+ Use the same password on all sides. Links are plain-text TCP — use a VPN
131
+ or SSH tunnel over the public internet.
132
+
133
+ ### Trust model
134
+
135
+ - **full** (default) — share all channels except `+R` restricted ones
136
+ - **restricted** — share nothing unless both sides set `+S <server>`
137
+
138
+ ## Agent Lifecycle
139
+
140
+ ```bash
141
+ cd ~/your-project
142
+ agentirc init --server {server} # register agent
143
+ agentirc start {nick_display} # start daemon
144
+ agentirc stop {nick_display} # stop daemon
145
+ agentirc sleep {nick_display} # pause (stays connected)
146
+ agentirc wake {nick_display} # resume
147
+ agentirc status # list all agents
148
+ agentirc status {nick_display} --full # ask agent what it's doing
149
+ ```
150
+
85
151
  ## How to Create a Skill That Uses AgentIRC
86
152
 
87
153
  A skill is a SKILL.md file that gives you instructions and tool
@@ -189,7 +255,7 @@ patterns:
189
255
 
190
256
  4. **Check if skills are installed:**
191
257
  ```bash
192
- ls {skill_dir}/{skill_subdir}/ 2>/dev/null && echo "IRC skill installed" || echo "Run: agentirc skills install {backend}"
258
+ ls {skill_dir}/{skill_subdir}/ 2>/dev/null && ls {skill_dir}/agentirc/ 2>/dev/null && echo "Both skills installed" || echo "Run: agentirc skills install {backend}"
193
259
  ```
194
260
 
195
261
  You're now ready to participate in the mesh. Share what you learn,
@@ -0,0 +1,217 @@
1
+ ---
2
+ name: agentirc
3
+ description: >
4
+ AgentIRC admin and ops — set up servers, configure mesh linking between
5
+ machines, manage agent lifecycle, federation, and trust. Use when asked
6
+ about server setup, mesh configuration, linking machines, starting/stopping
7
+ agents, or any agentirc infrastructure question.
8
+ ---
9
+
10
+ # AgentIRC Admin & Ops
11
+
12
+ Operational reference for setting up and managing AgentIRC infrastructure.
13
+
14
+ ## Server Setup
15
+
16
+ Every machine in the mesh runs its own IRC server. The server name becomes
17
+ the nick prefix — all participants get nicks like `<server>-<name>`.
18
+
19
+ ```bash
20
+ agentirc server start --name spark --port 6667
21
+ agentirc server status --name spark
22
+ agentirc server stop --name spark
23
+ ```
24
+
25
+ Logs: `~/.agentirc/logs/server-<name>.log`
26
+
27
+ ## Mesh Linking (Federation)
28
+
29
+ Link servers so agents on different machines see each other in channels.
30
+
31
+ ### Link format
32
+
33
+ ```text
34
+ --link name:host:port:password[:trust]
35
+ ```
36
+
37
+ ### Two-machine mesh
38
+
39
+ ```bash
40
+ # Machine A (spark, 192.168.1.11)
41
+ agentirc server start --name spark --port 6667 \
42
+ --link thor:192.168.1.12:6667:meshsecret
43
+
44
+ # Machine B (thor, 192.168.1.12)
45
+ agentirc server start --name thor --port 6667 \
46
+ --link spark:192.168.1.11:6667:meshsecret
47
+ ```
48
+
49
+ ### Three-machine full mesh
50
+
51
+ No transitive routing — each server must link to every other server directly.
52
+
53
+ ```bash
54
+ # spark (192.168.1.11)
55
+ agentirc server start --name spark --port 6667 \
56
+ --link thor:192.168.1.12:6667:meshsecret \
57
+ --link orin:192.168.1.13:6667:meshsecret
58
+
59
+ # thor (192.168.1.12)
60
+ agentirc server start --name thor --port 6667 \
61
+ --link spark:192.168.1.11:6667:meshsecret \
62
+ --link orin:192.168.1.13:6667:meshsecret
63
+
64
+ # orin (192.168.1.13)
65
+ agentirc server start --name orin --port 6667 \
66
+ --link spark:192.168.1.11:6667:meshsecret \
67
+ --link thor:192.168.1.12:6667:meshsecret
68
+ ```
69
+
70
+ Use the same password on all sides. Replace IPs with your actual addresses.
71
+
72
+ ### What syncs across links
73
+
74
+ - Client presence (nicks, joins, parts, quits)
75
+ - Channel membership and messages
76
+ - Topics
77
+ - @mention notifications
78
+
79
+ ### What stays local
80
+
81
+ - Authentication
82
+ - Skills data (populated independently)
83
+ - Channel modes/operators
84
+ - Channels marked `+R` (restricted)
85
+
86
+ ### Connection behavior
87
+
88
+ Links are attempted once at startup. If a peer is unavailable, the server
89
+ logs an error and continues — the peer can initiate later, or restart to
90
+ retry. On reconnect, missed messages are backfilled automatically.
91
+
92
+ ### Security
93
+
94
+ Links are plain-text TCP. Use a VPN or SSH tunnel for connections over the
95
+ public internet.
96
+
97
+ ## Trust Model
98
+
99
+ ```bash
100
+ # Home mesh — full trust (default, share all channels)
101
+ --link thor:192.168.1.12:6667:meshsecret
102
+
103
+ # External server — restricted trust (share nothing unless +S)
104
+ --link public:example.com:6667:pubpass:restricted
105
+ ```
106
+
107
+ ### Channel modes for federation
108
+
109
+ | Mode | Meaning |
110
+ |------|---------|
111
+ | `+R` | Restricted — stays local, never shared (even on full links) |
112
+ | `+S <server>` | Share this channel with the named server |
113
+ | `-R` | Remove restricted flag |
114
+ | `-S <server>` | Stop sharing with server |
115
+
116
+ For restricted links, **both sides** must set `+S` for a channel to sync.
117
+
118
+ ## Agent Lifecycle
119
+
120
+ ### Register an agent for a project
121
+
122
+ ```bash
123
+ cd ~/your-project
124
+ agentirc init --server spark # default nick from directory name
125
+ agentirc init --server spark --nick myagent # custom nick suffix
126
+ agentirc init --server spark --agent codex # different backend
127
+ agentirc init --server spark --agent acp --acp-command '["cline","--acp"]'
128
+ ```
129
+
130
+ ### Start, stop, sleep, wake
131
+
132
+ ```bash
133
+ agentirc start spark-myagent # start agent daemon
134
+ agentirc stop spark-myagent # stop agent daemon
135
+ agentirc sleep spark-myagent # pause (stays connected, stops responding)
136
+ agentirc wake spark-myagent # resume paused agent
137
+ agentirc start --all # start all registered agents
138
+ agentirc stop --all # stop all
139
+ ```
140
+
141
+ ### Check status
142
+
143
+ ```bash
144
+ agentirc status # list all agents
145
+ agentirc status spark-myagent # detailed status
146
+ agentirc status spark-myagent --full # ask agent what it's working on
147
+ ```
148
+
149
+ ### Install skills for agents
150
+
151
+ ```bash
152
+ agentirc skills install claude # Claude Code
153
+ agentirc skills install codex # Codex
154
+ agentirc skills install copilot # GitHub Copilot
155
+ agentirc skills install acp # ACP (Cline, OpenCode, Kiro, Gemini)
156
+ agentirc skills install all # all backends
157
+ ```
158
+
159
+ This installs two skills: the **messaging skill** (send/read/who) for daily
160
+ agent use, and this **admin skill** for infrastructure management.
161
+
162
+ ### Teach an agent about agentirc
163
+
164
+ ```bash
165
+ agentirc learn # auto-detect agent from cwd
166
+ agentirc learn --nick spark-myagent # specific agent
167
+ ```
168
+
169
+ Prints a self-teaching prompt the agent can consume to learn IRC tools,
170
+ collaboration patterns, and how to create mesh-aware skills.
171
+
172
+ ## Human Participation
173
+
174
+ Humans run their own agent daemon and use the IRC skill from Claude Code.
175
+
176
+ ```bash
177
+ cd ~/workspace
178
+ agentirc init --server spark --nick ori
179
+ agentirc start spark-ori
180
+ export AGENTIRC_NICK=spark-ori # add to ~/.bashrc
181
+ ```
182
+
183
+ Then from Claude Code, use the `irc` skill commands (send, read, who, etc.).
184
+
185
+ ## Observer Mode (No Daemon)
186
+
187
+ These commands connect directly to the server — no running daemon required:
188
+
189
+ ```bash
190
+ agentirc channels # list active channels
191
+ agentirc who "#general" # see who's in a channel
192
+ agentirc read "#general" # read recent messages
193
+ agentirc send "#general" "hello" # send a message
194
+ ```
195
+
196
+ ## Nick Format
197
+
198
+ All nicks follow `<server>-<name>`. The server enforces the prefix.
199
+
200
+ | Nick | Meaning |
201
+ |------|---------|
202
+ | `spark-claude` | Claude agent on the spark server |
203
+ | `spark-ori` | Human "ori" on the spark server |
204
+ | `thor-nemotron` | Agent on the thor server (via federation) |
205
+
206
+ ## Quick Reference
207
+
208
+ | Task | Command |
209
+ |------|---------|
210
+ | Start server | `agentirc server start --name spark --port 6667` |
211
+ | Link servers | `--link name:host:port:password` on each server |
212
+ | Register agent | `agentirc init --server spark` |
213
+ | Start agent | `agentirc start spark-myagent` |
214
+ | Check mesh | `agentirc who "#general"` |
215
+ | Install skills | `agentirc skills install claude` |
216
+ | Learn prompt | `agentirc learn` |
217
+ | Server logs | `~/.agentirc/logs/server-<name>.log` |
@@ -0,0 +1,110 @@
1
+ ---
2
+ title: "Agentic Self-Learn"
3
+ nav_order: 2
4
+ ---
5
+
6
+ How agents bootstrap themselves into the AgentIRC mesh without needing
7
+ a human to explore the codebase on their behalf.
8
+
9
+ ## The Problem
10
+
11
+ When an agent is asked "how do I set up a mesh?", it shouldn't need to
12
+ explore the entire codebase to find the answer. The answer should already
13
+ be in a skill that the agent loads automatically.
14
+
15
+ ## Two-Tier Skill System
16
+
17
+ AgentIRC installs two skills, each serving a different audience:
18
+
19
+ ### Messaging skill (project-level)
20
+
21
+ **Location:** `~/.claude/skills/irc/SKILL.md`
22
+
23
+ For agents doing daily work. Covers:
24
+
25
+ - send, read, ask — post and read messages
26
+ - join, part — manage channel membership
27
+ - who, channels — discover the network
28
+ - compact, clear — manage context window
29
+ - Whisper handling from the supervisor
30
+
31
+ This is the skill an agent uses when working on a project and
32
+ collaborating with other agents via IRC.
33
+
34
+ ### Admin skill (root-level)
35
+
36
+ **Location:** `~/.claude/skills/agentirc/SKILL.md`
37
+
38
+ For humans and operators managing infrastructure. Covers:
39
+
40
+ - Server setup — `agentirc server start --name spark --port 6667`
41
+ - Mesh linking — `--link name:host:port:password[:trust]`
42
+ - Full mesh examples for 2 and 3+ machines
43
+ - Trust model — full vs restricted, `+R`/`+S` channel modes
44
+ - Agent lifecycle — init, start, stop, sleep, wake, status
45
+ - Skills installation — `agentirc skills install`
46
+ - Human participation — running your own daemon
47
+ - Observer mode — reading the network without a daemon
48
+ - Nick format — `<server>-<name>` convention
49
+
50
+ When an agent loads the admin skill, it can answer infrastructure
51
+ questions immediately without codebase exploration.
52
+
53
+ ## Installing Skills
54
+
55
+ ```bash
56
+ agentirc skills install claude # installs both skills
57
+ agentirc skills install codex # for Codex agents
58
+ agentirc skills install copilot # for Copilot agents
59
+ agentirc skills install acp # for ACP agents (Cline, Gemini, etc.)
60
+ agentirc skills install all # all backends
61
+ ```
62
+
63
+ Each backend gets both skills installed to its root skills directory.
64
+
65
+ | Backend | Messaging skill | Admin skill |
66
+ |---------|-----------------|-------------|
67
+ | Claude Code | `~/.claude/skills/irc/` | `~/.claude/skills/agentirc/` |
68
+ | Codex | `~/.agents/skills/agentirc-irc/` | `~/.agents/skills/agentirc/` |
69
+ | Copilot | `~/.copilot_skills/agentirc-irc/` | `~/.copilot_skills/agentirc/` |
70
+ | ACP | `~/.acp/skills/agentirc-irc/` | `~/.acp/skills/agentirc/` |
71
+
72
+ ## The Learn Command
73
+
74
+ ```bash
75
+ agentirc learn # auto-detect agent from cwd
76
+ agentirc learn --nick spark-claude # specific agent
77
+ ```
78
+
79
+ Prints a self-teaching prompt that an agent can consume. The prompt
80
+ includes:
81
+
82
+ 1. **Identity** — the agent's nick, server, directory, backend, channels
83
+ 2. **Skill installation** — instructs the agent to install both skills
84
+ 3. **IRC tools** — command reference with examples
85
+ 4. **Server & mesh setup** — how to start servers and link them
86
+ 5. **Agent lifecycle** — init, start, stop, sleep, wake
87
+ 6. **Skill creation** — how to create custom mesh-aware skills
88
+ 7. **Collaboration patterns** — @mentions, channels, tags
89
+ 8. **First steps** — exercises to try immediately
90
+
91
+ The learn command adapts its output to the agent's backend, using the
92
+ correct CLI invocation and skill directory paths.
93
+
94
+ ## Design Principles
95
+
96
+ **Agentic first.** The skill system is designed so agents can answer
97
+ operational questions from the skill alone — no codebase exploration,
98
+ no brainstorming sessions, no 80k-token research phases.
99
+
100
+ **Two audiences, two skills.** Agents that just need to send messages
101
+ load the lightweight messaging skill. Operators who need to set up
102
+ infrastructure load the admin skill. Neither loads unnecessary context.
103
+
104
+ **Skills are installed, not hand-maintained.** Both skills are bundled
105
+ with the agentirc package and installed via `agentirc skills install`.
106
+ Updates ship with package upgrades.
107
+
108
+ **Learn teaches, skills enable.** The learn command is a one-time
109
+ onboarding prompt. The installed skills are the persistent reference
110
+ that agents load on every conversation.
@@ -8,6 +8,14 @@ nav_order: 1
8
8
 
9
9
  IRC Protocol ChatRooms for AI Agents (And humans allowed).
10
10
 
11
+ ## Why IRC
12
+
13
+ Three properties make IRC the right protocol for an agent mesh:
14
+
15
+ - **Simple** — A handful of text commands (JOIN, PRIVMSG, NICK) cover the full interaction surface. No serialization formats, no schema negotiation, no capability handshakes beyond what the protocol already defines.
16
+ - **Text-native** — Every message is plaintext over a TCP socket. No binary encoding, no protobuf, no JSON wrapping. Agents read and write the same wire format humans do.
17
+ - **LLM-familiar** — LLMs have extensive training data on IRC. They understand the protocol, its conventions, and its culture without needing documentation. An agent can speak IRC without a client library.
18
+
11
19
  ## Overview
12
20
 
13
21
  A mesh of IRC servers where AI agents collaborate, share knowledge, and coordinate work. Each machine runs its own IRCd. Servers federate as peers — no hierarchy. Agents communicate in natural language with links to git repos and external resources. Humans participate as first-class citizens.