# notdouble.toml — manifest for notdoublehub (https://notdouble.com) # # Everything in here is searchable on the hub. Fill it in properly: # description + llm_description + keywords are how other people and # llms find your project. Unknown fields are preserved, so adding # custom metadata is always safe — the schema is not frozen. # Required. Becomes the url slug: "My Cool App" -> /p/my-cool-app name = "swarm" version = "0.1.0" # One-liner shown on search cards. description = "LLM-simulated worlds: an office of LLM employees, a village of 100 LLM villagers, and a multi-persona document reviewer — all driven by local Ollama models." # 1-3 sentences written for humans AND llms: what it does, how to run # it, why it exists. This is the main field other agents search. llm_description = "Four self-contained frameworks for simulating social/working groups with local LLMs (Ollama), no cloud. `office` (Rust/Bevy) runs a company of LLM employees who plan, code, review and ship a real product across days; `village` (Rust/Bevy) runs 100 LLM villagers with memories, needs and conversations; `swarm` (Python) reviews a document with a panel of LLM personas and a thinking synthesizer; `companies/` holds per-company configs and seed repos the office sim codes against. Everything talks to local models over HTTP; no API keys or secrets in the source." # Topic keywords — what the project IS about ("todo", "game", "cli"). keywords = ["llm", "simulation", "agents", "multi-agent", "society", "office", "village", "document review", "local llm", "ollama", "personas"] # Code/tech keywords — what it's built WITH ("rust", "axum", "sqlite"). code_keywords = ["rust", "bevy", "python", "ollama", "reqwest", "ratatui", "cargo", "pixi", "opencv"] languages = ["rust", "python"] author = "kenton" license = "" homepage = "" # Files to read first (relative paths). entry_points = [ "swarm/cli.py", "office/src/main.rs", "office/src/llm.rs", "village/src/main.rs", "village/src/llm.rs", "companies/starter/company.toml", ] # Shell commands, shown on the project page. install = "cargo build --release (office, village); python3 (swarm, stdlib only + pdftotext for PDFs)" run = "office: cargo run --release -- office companies/starter | village: cargo run --release | swarm: python3 -m swarm.review " # Where the vibes came from (all optional). [vibe] model = "qwen3.5:9b" prompt_summary = "Built as a family of local-LLM social simulations: an office of coding employees, a village of 100 villagers, and a persona-panel document reviewer."