A
alexnodeland/lattice
🧩 Python libraries for apps where people and agents work together — shared artifacts, rules over events,…
View on GitHub ↗Link checked 2026-11-12 · HTTP 200 · opens the vendor's own site
Install & config
Client config (built from the install command this repo gives)
{
"mcpServers": {
"alexnodeland-lattice": {
"command": "uvx",
"args": ["copier"]
}
}
}Parsed from the README we fetched on 2026-10-29; we have not executed it.
command/args come from the install command the repository states. When it is ambiguous, the project README wins.
VS Code (.vscode/mcp.json - the key is servers)
{
"servers": {
"alexnodeland-lattice": {
"command": "uvx",
"args": ["copier"]
}
}
}Same server, but VS Code keeps it under <code>servers</code>.
Claude Code (command line)
claude mcp add --transport stdio alexnodeland-lattice -- uvx copier
Claude Code does not read a config file; add the server with this command.
Key names differ by client: Clients & CLI
- Star count
- 1 ★ · alexnodeland/lattice · read from the GitHub search API · (checked 2026-11-13 20:00:50)
- Source
- read directly from its GitHub page · type: open-source project
- Harvest history
- first seen 2026-10-29 · last seen 2026-11-14 · seen 17× · listed by 1 sources
- Score
- score 103 · 1 ★ · 1 sources · repo
- Install
uvx copier
FAQ (answers come from our records)
How do I install it?
The repository provides this install command:
uvx copier. It comes from the repository itself; we cannot guarantee it runs as-is in your client.Who is it for?
We filed it under these tags: 开源项目. The tags come from the entry itself, not a taxonomy we imposed.
Who maintains it?
repository
alexnodeland/lattice;first catalogued 2026-10-29;last seen 2026-11-14。There is no official certification or quality rating here — we record sources and dates only.Quick start ·
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
The packages ·
How it fits ·
Docs ·
How it's built ·
Contributing
lattice is a set of Python libraries for applications in which people and agents work together, and the stack they run on.
🤝 People and agents share versioned artifacts. An agent proposes a change, and a person accepts it.
⚡ Rules over event streams run agents, graphs and functions when something happens.
💬 People can draft those rules in chat (🚧 landing now). A rule goes live only once a person allowed to install it accepts.
📏 Typed evaluations learn from people's feedback.
🔐 Identity and access is checked before every command and read, down to PostgreSQL's row-level security.
🪟 A portal is where people use the application and run it.
🧱 One template and one stack hold it all, locally or on a server.
Each package keeps its own name, version, changelog and releases. They share one environment, one lockfile, one CI and one documentation site, so a change that spans packages lands in one pull request.
## 🧭 How it fits together
A person chats with an agent in artifactr, through portalr or any client of artifactr's REST, WebSocket and MCP surfaces. relayr turns what happens in the chat into events for reflexr's rules, and the rules' runs act back in the chat as proposals and notices. grantr decides who may do what, evalr measures how well the agents do it, and stackr runs it all. Underneath, the packages share lattice-core, the infrastructure they must keep identical.
🔁 Follow one rule from chat to live
mermaid
sequenceDiagram
autonumber
actor P as Person
participant A as artifactr
participant L as relayr
participant R as reflexr
participant G as grantr
P->>A: "Tell this thread whenever an alert fires"
A->>A: the agent drafts a rule, checks it and previews it
A-->>P: a proposal, with how often it would have fired
P->>A: accepts the proposal
A->>L: proposalresolved
L->>A: re-reads who accepted, and at which version
L->>G: may this person install rules here?
G-->>L: yes
L->>R: install the rule, with its provenance
L-->>A: notice: the rule is live
Note over R,A: from now on, each alert posts a notice in the thread
🚧 relayr's library does this today, and stackr's template is wiring it in. A forged acceptance installs nothing: relayr never trusts the event, only artifactr's record of it. A rule acts as itself, inside its own workspace, and can't post into a thread its workspace restricts. relayr's guide has the details.
## 🧩 The packages
| Package | What it is | Status |
| artifactr | Chat applications where people and agents collaborate through shared, versioned artifacts | ✅ released · 📦 PyPI |
| reflexr | Rules over event streams that run LLM workflows: pydantic-ai agents, pydantic-graph graphs and functions | ✅ released · 📦 PyPI |
| evalr | Typed evaluation of agent systems: judges that give typed verdicts, trained on people's feedback and measured against it | ✅ released · 📦 PyPI |
| relayr | The bridge between artifactr and reflexr: chat events become events for rules, and runs act back in the chat. Rules can be drafted in chat. | ✅ released · 📦 PyPI |
| grantr | Identity and access: tenants, members, groups, roles, service principals and restricted items, checked before every command and read, with row-level security | ✅ released · 📦 PyPI |
How it fits ·
Docs ·
How it's built ·
Contributing
lattice is a set of Python libraries for applications in which people and agents work together, and the stack they run on.
🤝 People and agents share versioned artifacts. An agent proposes a change, and a person accepts it.
⚡ Rules over event streams run agents, graphs and functions when something happens.
💬 People can draft those rules in chat (🚧 landing now). A rule goes live only once a person allowed to install it accepts.
📏 Typed evaluations learn from people's feedback.
🔐 Identity and access is checked before every command and read, down to PostgreSQL's row-level security.
🪟 A portal is where people use the application and run it.
🧱 One template and one stack hold it all, locally or on a server.
Each package keeps its own name, version, changelog and releases. They share one environment, one lockfile, one CI and one documentation site, so a change that spans packages lands in one pull request.
## 🧭 How it fits together
A person chats with an agent in artifactr, through portalr or any client of artifactr's REST, WebSocket and MCP surfaces. relayr turns what happens in the chat into events for reflexr's rules, and the rules' runs act back in the chat as proposals and notices. grantr decides who may do what, evalr measures how well the agents do it, and stackr runs it all. Underneath, the packages share lattice-core, the infrastructure they must keep identical.
🔁 Follow one rule from chat to live
mermaid
sequenceDiagram
autonumber
actor P as Person
participant A as artifactr
participant L as relayr
participant R as reflexr
participant G as grantr
P->>A: "Tell this thread whenever an alert fires"
A->>A: the agent drafts a rule, checks it and previews it
A-->>P: a proposal, with how often it would have fired
P->>A: accepts the proposal
A->>L: proposalresolved
L->>A: re-reads who accepted, and at which version
L->>G: may this person install rules here?
G-->>L: yes
L->>R: install the rule, with its provenance
L-->>A: notice: the rule is live
Note over R,A: from now on, each alert posts a notice in the thread
🚧 relayr's library does this today, and stackr's template is wiring it in. A forged acceptance installs nothing: relayr never trusts the event, only artifactr's record of it. A rule acts as itself, inside its own workspace, and can't post into a thread its workspace restricts. relayr's guide has the details.
## 🧩 The packages
| Package | What it is | Status |
| artifactr | Chat applications where people and agents collaborate through shared, versioned artifacts | ✅ released · 📦 PyPI |
| reflexr | Rules over event streams that run LLM workflows: pydantic-ai agents, pydantic-graph graphs and functions | ✅ released · 📦 PyPI |
| evalr | Typed evaluation of agent systems: judges that give typed verdicts, trained on people's feedback and measured against it | ✅ released · 📦 PyPI |
| relayr | The bridge between artifactr and reflexr: chat events become events for rules, and runs act back in the chat. Rules can be drafted in chat. | ✅ released · 📦 PyPI |
| grantr | Identity and access: tenants, members, groups, roles, service principals and restricted items, checked before every command and read, with row-level security | ✅ released · 📦 PyPI |
Listed badge (optional)
Copy this line into the README if you want the listing mark. Optional, and it does not affect being listed.
[](https://anclum.com/en/s/alexnodeland-lattice/)
- Source
- github · https://github.com/alexnodeland/lattice
- Browse by field
- Open source
- Traction
- 1 ★
- added
- today
More like this
Filed under
Every tag opens the full list for that filter. Counts are the live catalogue figures.