agent-chat-plugin 0.3.0__tar.gz → 0.4.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.
- {agent_chat_plugin-0.3.0 → agent_chat_plugin-0.4.0}/PKG-INFO +43 -22
- {agent_chat_plugin-0.3.0 → agent_chat_plugin-0.4.0}/README.md +42 -21
- agent_chat_plugin-0.4.0/agent_chat/lease_store.py +1871 -0
- agent_chat_plugin-0.4.0/agent_chat/path_locks.py +1823 -0
- agent_chat_plugin-0.4.0/agent_chat/state_store.py +793 -0
- agent_chat_plugin-0.4.0/agent_chat/task_model.py +347 -0
- agent_chat_plugin-0.4.0/agent_chat/task_store.py +687 -0
- {agent_chat_plugin-0.3.0 → agent_chat_plugin-0.4.0}/agent_chat_plugin.egg-info/PKG-INFO +43 -22
- {agent_chat_plugin-0.3.0 → agent_chat_plugin-0.4.0}/agent_chat_plugin.egg-info/SOURCES.txt +11 -1
- agent_chat_plugin-0.4.0/agent_chat_plugin.egg-info/top_level.txt +2 -0
- agent_chat_plugin-0.4.0/chat.py +1373 -0
- {agent_chat_plugin-0.3.0 → agent_chat_plugin-0.4.0}/pyproject.toml +5 -3
- agent_chat_plugin-0.4.0/tests/test_capabilities.py +166 -0
- agent_chat_plugin-0.4.0/tests/test_leases.py +1337 -0
- agent_chat_plugin-0.4.0/tests/test_path_locks.py +638 -0
- agent_chat_plugin-0.4.0/tests/test_state.py +814 -0
- agent_chat_plugin-0.4.0/tests/test_tasks.py +696 -0
- agent_chat_plugin-0.3.0/agent_chat_plugin.egg-info/top_level.txt +0 -1
- agent_chat_plugin-0.3.0/chat.py +0 -587
- {agent_chat_plugin-0.3.0 → agent_chat_plugin-0.4.0}/LICENSE +0 -0
- {agent_chat_plugin-0.3.0 → agent_chat_plugin-0.4.0}/agent_chat_plugin.egg-info/dependency_links.txt +0 -0
- {agent_chat_plugin-0.3.0 → agent_chat_plugin-0.4.0}/agent_chat_plugin.egg-info/entry_points.txt +0 -0
- {agent_chat_plugin-0.3.0 → agent_chat_plugin-0.4.0}/setup.cfg +0 -0
- {agent_chat_plugin-0.3.0 → agent_chat_plugin-0.4.0}/tests/test_chat.py +0 -0
- {agent_chat_plugin-0.3.0 → agent_chat_plugin-0.4.0}/tests/test_hooks.py +0 -0
- {agent_chat_plugin-0.3.0 → agent_chat_plugin-0.4.0}/tests/test_plugin_manifest.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: agent-chat-plugin
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.4.0
|
|
4
4
|
Summary: Peer AI agents coordinate through markdown messages in shared channel folders — no orchestrator, autonomous zero-token waiting, cross-platform.
|
|
5
5
|
Author: n24q02m
|
|
6
6
|
License: Apache-2.0
|
|
@@ -97,11 +97,25 @@ python chat.py init review --members alice,bob --topic "code review"
|
|
|
97
97
|
# alice posts to bob
|
|
98
98
|
python chat.py post review --from alice --to bob --title "Schema v0.2" --body-file msg.md
|
|
99
99
|
|
|
100
|
-
# bob reads what's new for him
|
|
100
|
+
# bob reads what's new for him
|
|
101
101
|
python chat.py read review --as bob
|
|
102
102
|
|
|
103
|
-
#
|
|
104
|
-
python chat.py
|
|
103
|
+
# create dependent work
|
|
104
|
+
python chat.py task create review T-0001 --from alice --title "Implement schema"
|
|
105
|
+
python chat.py task create review T-0002 --from alice --title "Review schema" --depends-on T-0001
|
|
106
|
+
|
|
107
|
+
# claim, renew and complete a ready task
|
|
108
|
+
python chat.py task claim review T-0001 --as alice --lease-seconds 900
|
|
109
|
+
python chat.py task renew review T-0001 --as alice --lease-seconds 900
|
|
110
|
+
python chat.py task done review T-0001 --as alice
|
|
111
|
+
|
|
112
|
+
# coordinate paths and state
|
|
113
|
+
python chat.py lock review src/schema.py --as alice --lease-seconds 900
|
|
114
|
+
python chat.py state review
|
|
115
|
+
python chat.py compact review --as alice
|
|
116
|
+
|
|
117
|
+
# capability handshake without claiming host-native execution
|
|
118
|
+
python chat.py event post review --from alice --type capability --harness generic-shell
|
|
105
119
|
```
|
|
106
120
|
|
|
107
121
|
Root defaults to `~/agent-chat`; override with `$AGENT_CHAT_ROOT` or `--root`. Run
|
|
@@ -109,36 +123,43 @@ Root defaults to `~/agent-chat`; override with `$AGENT_CHAT_ROOT` or `--root`. R
|
|
|
109
123
|
|
|
110
124
|
## How it works
|
|
111
125
|
|
|
112
|
-
- **Channels** — one folder per group chat; make as many as
|
|
113
|
-
- **Messages** —
|
|
114
|
-
|
|
115
|
-
- **
|
|
116
|
-
- **
|
|
117
|
-
|
|
126
|
+
- **Channels** — one folder per group chat; make as many as needed with `init`.
|
|
127
|
+
- **Messages** — numbered Markdown files with frontmatter and immutable replies.
|
|
128
|
+
- **Cursors** — `read`/`wait` show only new relevant messages.
|
|
129
|
+
- **Tasks** — JSON records with dependencies, readiness, status and acceptance.
|
|
130
|
+
- **Leases** — owner-bound claims with expiry and explicit stale recovery.
|
|
131
|
+
- **Path locks** — normalized workspace-relative ownership records with conflict checks.
|
|
132
|
+
- **State** — deterministic derived `state.md`; compaction never replaces source records.
|
|
133
|
+
- **Events** — versioned capability/status JSON carried through ordinary messages.
|
|
134
|
+
- **Atomicity** — filesystem transactions, audit events and recovery markers protect concurrent work.
|
|
118
135
|
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
cursor; reply in a new file. Full protocol in `SPEC.md`.
|
|
136
|
+
Agent Chat is a coordination data layer. It does not execute agents, assign models,
|
|
137
|
+
approve permissions, run MCP/ACP, or wake another process.
|
|
122
138
|
|
|
123
139
|
## Two modes, two budgets
|
|
124
140
|
|
|
125
|
-
- **Live swarm** — N sessions
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
141
|
+
- **Live swarm** — N sessions run concurrently and use `wait` for wall-clock parallelism.
|
|
142
|
+
- **Async handoff / audit** — a session posts an artifact summary for the next session.
|
|
143
|
+
|
|
144
|
+
Both modes use the same file-backed protocol and remain auditable.
|
|
129
145
|
|
|
130
146
|
## Install & distribution
|
|
131
147
|
|
|
132
148
|
- **As a CLI** — `pipx install agent-chat-plugin` then run `agent-chat`
|
|
133
149
|
(or `uvx --from agent-chat-plugin agent-chat`).
|
|
134
|
-
- **As a
|
|
135
|
-
|
|
136
|
-
|
|
150
|
+
- **As a Skill** — copy `SKILL.md` and `chat.py` into a compatible Skills directory.
|
|
151
|
+
- **As a Claude Code plugin** — install from the marketplace package.
|
|
152
|
+
|
|
153
|
+
The CLI/Skill protocol is portable. A portable protocol claim is not a first-class
|
|
154
|
+
native integration claim for a specific host; verify each host's manifest, hooks and
|
|
155
|
+
domain call separately.
|
|
137
156
|
|
|
138
157
|
## Status
|
|
139
158
|
|
|
140
|
-
|
|
141
|
-
|
|
159
|
+
The reference implementation covers file-backed messages, cursors, token-free wait,
|
|
160
|
+
structured tasks/dependencies, leases, normalized path locks, derived state and
|
|
161
|
+
adapter-neutral capability/status events. MCP wrappers, ACP/wake bridges and agent
|
|
162
|
+
execution remain separate future designs.
|
|
142
163
|
|
|
143
164
|
## License
|
|
144
165
|
|
|
@@ -79,11 +79,25 @@ python chat.py init review --members alice,bob --topic "code review"
|
|
|
79
79
|
# alice posts to bob
|
|
80
80
|
python chat.py post review --from alice --to bob --title "Schema v0.2" --body-file msg.md
|
|
81
81
|
|
|
82
|
-
# bob reads what's new for him
|
|
82
|
+
# bob reads what's new for him
|
|
83
83
|
python chat.py read review --as bob
|
|
84
84
|
|
|
85
|
-
#
|
|
86
|
-
python chat.py
|
|
85
|
+
# create dependent work
|
|
86
|
+
python chat.py task create review T-0001 --from alice --title "Implement schema"
|
|
87
|
+
python chat.py task create review T-0002 --from alice --title "Review schema" --depends-on T-0001
|
|
88
|
+
|
|
89
|
+
# claim, renew and complete a ready task
|
|
90
|
+
python chat.py task claim review T-0001 --as alice --lease-seconds 900
|
|
91
|
+
python chat.py task renew review T-0001 --as alice --lease-seconds 900
|
|
92
|
+
python chat.py task done review T-0001 --as alice
|
|
93
|
+
|
|
94
|
+
# coordinate paths and state
|
|
95
|
+
python chat.py lock review src/schema.py --as alice --lease-seconds 900
|
|
96
|
+
python chat.py state review
|
|
97
|
+
python chat.py compact review --as alice
|
|
98
|
+
|
|
99
|
+
# capability handshake without claiming host-native execution
|
|
100
|
+
python chat.py event post review --from alice --type capability --harness generic-shell
|
|
87
101
|
```
|
|
88
102
|
|
|
89
103
|
Root defaults to `~/agent-chat`; override with `$AGENT_CHAT_ROOT` or `--root`. Run
|
|
@@ -91,36 +105,43 @@ Root defaults to `~/agent-chat`; override with `$AGENT_CHAT_ROOT` or `--root`. R
|
|
|
91
105
|
|
|
92
106
|
## How it works
|
|
93
107
|
|
|
94
|
-
- **Channels** — one folder per group chat; make as many as
|
|
95
|
-
- **Messages** —
|
|
96
|
-
|
|
97
|
-
- **
|
|
98
|
-
- **
|
|
99
|
-
|
|
108
|
+
- **Channels** — one folder per group chat; make as many as needed with `init`.
|
|
109
|
+
- **Messages** — numbered Markdown files with frontmatter and immutable replies.
|
|
110
|
+
- **Cursors** — `read`/`wait` show only new relevant messages.
|
|
111
|
+
- **Tasks** — JSON records with dependencies, readiness, status and acceptance.
|
|
112
|
+
- **Leases** — owner-bound claims with expiry and explicit stale recovery.
|
|
113
|
+
- **Path locks** — normalized workspace-relative ownership records with conflict checks.
|
|
114
|
+
- **State** — deterministic derived `state.md`; compaction never replaces source records.
|
|
115
|
+
- **Events** — versioned capability/status JSON carried through ordinary messages.
|
|
116
|
+
- **Atomicity** — filesystem transactions, audit events and recovery markers protect concurrent work.
|
|
100
117
|
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
cursor; reply in a new file. Full protocol in `SPEC.md`.
|
|
118
|
+
Agent Chat is a coordination data layer. It does not execute agents, assign models,
|
|
119
|
+
approve permissions, run MCP/ACP, or wake another process.
|
|
104
120
|
|
|
105
121
|
## Two modes, two budgets
|
|
106
122
|
|
|
107
|
-
- **Live swarm** — N sessions
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
123
|
+
- **Live swarm** — N sessions run concurrently and use `wait` for wall-clock parallelism.
|
|
124
|
+
- **Async handoff / audit** — a session posts an artifact summary for the next session.
|
|
125
|
+
|
|
126
|
+
Both modes use the same file-backed protocol and remain auditable.
|
|
111
127
|
|
|
112
128
|
## Install & distribution
|
|
113
129
|
|
|
114
130
|
- **As a CLI** — `pipx install agent-chat-plugin` then run `agent-chat`
|
|
115
131
|
(or `uvx --from agent-chat-plugin agent-chat`).
|
|
116
|
-
- **As a
|
|
117
|
-
|
|
118
|
-
|
|
132
|
+
- **As a Skill** — copy `SKILL.md` and `chat.py` into a compatible Skills directory.
|
|
133
|
+
- **As a Claude Code plugin** — install from the marketplace package.
|
|
134
|
+
|
|
135
|
+
The CLI/Skill protocol is portable. A portable protocol claim is not a first-class
|
|
136
|
+
native integration claim for a specific host; verify each host's manifest, hooks and
|
|
137
|
+
domain call separately.
|
|
119
138
|
|
|
120
139
|
## Status
|
|
121
140
|
|
|
122
|
-
|
|
123
|
-
|
|
141
|
+
The reference implementation covers file-backed messages, cursors, token-free wait,
|
|
142
|
+
structured tasks/dependencies, leases, normalized path locks, derived state and
|
|
143
|
+
adapter-neutral capability/status events. MCP wrappers, ACP/wake bridges and agent
|
|
144
|
+
execution remain separate future designs.
|
|
124
145
|
|
|
125
146
|
## License
|
|
126
147
|
|