Wenlan
Wenlan is a source-backed AI knowledge base and LLM wiki for AI work: organize documents and decisions into pages you can find, inspect, and review.
翻訳待ち
リポジトリ情報はまだ収集していません。
No updates detected yet. GitHub releases will appear here.
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗https://github.com/user-attachments/assets/63f84845-ff8a-435d-ae00-6054b085571f
Sederunt is the assistant that remembers what your team agreed. It keeps decisions, announcements, and files on Walrus Memory so the people who should see them can find them later in the app or ask from Slack. Slack channels, shared files, and calls all feed that same team memory — a meeting is one source, not the whole product.
Live app: sederunt.vercel.app
Submitted to Track 02: Smart Agents for Real Life at the Tatum × Walrus Total Recall hackathon. It uses Walrus Memory to keep decisions and Tatum to read their Sui proofs. Read the project write-up.
flowchart LR
slack[Slack channels and files]
dms[Direct messages]
calls[Calls]
mem[Team memory on Walrus]
ask[Ask in the app or Slack]
proof[Walrus and Sui proof]
slack --> mem
dms --> mem
calls --> mem
mem --> ask
mem --> proof
Each Slack team maps to one Sederunt space. Private notes stay on the personal account.
Project status: Sederunt is a hackathon project. A full live Slack and call rehearsal is still needed to validate the end-to-end follow-up flow. A connected status or passing test suite alone does not prove that a record was kept or a ticket was filed. See the demo runbook for the checks.
| Part | Role in Sederunt |
|---|---|
| Walrus Memory and Walrus Console | Store decision records and related files. |
| Sui and Tatum | Read the on-chain object and checkpoint used to verify a record. |
| Slack | Keep channel context and files, answer questions, and deliver eligible follow-ups. |
| Google Meet and Recall.ai | Bring the assistant into a call and receive meeting events. |
| Linear and Google Calendar | Carry out supported requests through connected tools. |
| Supabase and Redis | Support identity, workspace data, and durable application state. |
A decision is available only to an authorized reader. The assistant checks the room and requester before returning a record; a tool write passes through the common allow gate. Inferred proposals do not become authorized writes by themselves. See the requirements and access design for the full rules.
Prerequisites: Node.js 24.15.0 (pinned in .nvmrc), npm, and Git. The commands below use nvm to select Node.
git clone https://github.com/ngna3007/sederunt.git
cd sederunt
nvm install
nvm use
npm ci
SEDERUNT_AUTH_FAKE=1 npm start
Open http://127.0.0.1:8787/console. In the sign-in screen, click Continue with Google to use the local fake identity and follow the workspace setup. This is a development profile: it uses local identities and a fake calendar. It does not connect a real Slack workspace, meeting, Linear account, or Walrus storage. Without a configured company memory account, the console may say the account is not loaded.
To configure real integrations, copy .env.example to .env and provide your own credentials, then start the server:
cp .env.example .env
# Configure the services you intend to use in .env.
node --env-file=.env src/server.js
Start with the Google sign-in setup, connector guide, and Walrus Files design. Never commit .env, tokens, private keys, or .local/. A production deployment also needs the required database migrations, durable stores, and recovery configuration described in the release report.
npm test # Node test suite
npm run check:syntax # JavaScript syntax
npm run check:integration # disposable database and Redis checks; requires Docker
npm run check:audit # npm dependency audit
npm run check:secrets # Git-history scan; requires Docker and full history
The regular test suite can skip tests that require external services. The integration command creates and removes dedicated disposable services; see the CI guide for the exact checks and remaining gaps.
| Path | Start here for… |
|---|---|
src/server.js | The Node server and HTTP routes |
src/memory/ and src/ask/ | Decision storage, recovery, and questions |
src/slack/ and src/files/ | Slack interactions, file access, and background jobs |
src/meeting/ | Meeting events |
src/domain/ | Invitation checks and the allow gate |
src/tatum/ | Tatum gRPC reads and proof verification |
docs/ | Requirements, design notes, and operations |
For a concrete on-chain example, inspect the booth decision on Suiscan and its recorded mainnet proof.