ruminate 0.0.1
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.
- package/LICENSE +21 -0
- package/README.md +81 -0
- package/bin/ruminate.js +2 -0
- package/package.json +26 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Finn Bodimeade
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
# Ruminate
|
|
2
|
+
|
|
3
|
+
Persistent memory and task context for coding agents.
|
|
4
|
+
|
|
5
|
+
```sh
|
|
6
|
+
npx ruminate init
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
> **Status:** pre-release. This package currently reserves the name and prints a pointer
|
|
10
|
+
> to [ruminate.so](https://ruminate.so). `init` ships in `0.1.0`.
|
|
11
|
+
|
|
12
|
+
## What it does
|
|
13
|
+
|
|
14
|
+
Ruminate reads a repository you already have checked out and writes a `.ruminate/`
|
|
15
|
+
directory describing what the project is, how it is built, and how it fits together. That
|
|
16
|
+
directory is plain Markdown, committed alongside your code, so any coding agent — Claude
|
|
17
|
+
Code, Cursor, Codex, whatever comes next — starts with the context a new teammate would
|
|
18
|
+
get on their first day instead of rediscovering it every session. It runs locally, needs
|
|
19
|
+
no account and no API key, and finishes in seconds.
|
|
20
|
+
|
|
21
|
+
## Demo
|
|
22
|
+
|
|
23
|
+
<!-- asciinema -->
|
|
24
|
+
|
|
25
|
+
## What gets created
|
|
26
|
+
|
|
27
|
+
```
|
|
28
|
+
.ruminate/
|
|
29
|
+
├── project.md # what this is, stack, entrypoints, how to run
|
|
30
|
+
├── architecture.md # major components and how they relate
|
|
31
|
+
├── context.md # merged existing agent context (AGENTS.md, CLAUDE.md, …)
|
|
32
|
+
├── tasks.md # unfinished work, in a shape agents can pick up
|
|
33
|
+
├── decisions.md # choices worth not relitigating
|
|
34
|
+
└── manifest.json # file hashes, scan timestamp, version
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
Commit it. It is written for humans and agents to read the same way, with stable headings
|
|
38
|
+
and deterministic ordering, so re-running `init` produces a clean diff rather than churn.
|
|
39
|
+
|
|
40
|
+
## How it works
|
|
41
|
+
|
|
42
|
+
`ruminate init` resolves your git root, walks the tree while respecting every applicable
|
|
43
|
+
`.gitignore`, and reads your manifests (`package.json`, `pyproject.toml`, `Cargo.toml`,
|
|
44
|
+
`go.mod`, and friends) to identify the stack and entrypoints. It then ranks files by
|
|
45
|
+
import centrality — how much of the codebase depends on them — to find the parts that
|
|
46
|
+
actually matter.
|
|
47
|
+
|
|
48
|
+
Existing agent context files are treated as authoritative. If your repo already has an
|
|
49
|
+
`AGENTS.md`, a `CLAUDE.md`, or `.cursorrules`, what they say wins over anything Ruminate
|
|
50
|
+
infers.
|
|
51
|
+
|
|
52
|
+
Re-running `init` will not overwrite your edits. Ruminate hashes what it wrote, reports
|
|
53
|
+
what has drifted since, and requires `--force` before replacing anything you changed by
|
|
54
|
+
hand.
|
|
55
|
+
|
|
56
|
+
## Privacy
|
|
57
|
+
|
|
58
|
+
No telemetry. No analytics. No phone-home. The first pass makes no network calls at all
|
|
59
|
+
and requires no API key — everything it produces comes from files already on your disk.
|
|
60
|
+
|
|
61
|
+
## Requirements
|
|
62
|
+
|
|
63
|
+
Node.js 20 or newer.
|
|
64
|
+
|
|
65
|
+
## Contributing
|
|
66
|
+
|
|
67
|
+
After a release is published, verify it from the registry rather than from a local
|
|
68
|
+
checkout:
|
|
69
|
+
|
|
70
|
+
```sh
|
|
71
|
+
scripts/verify-release.sh # defaults to ruminate@latest
|
|
72
|
+
scripts/verify-release.sh ruminate@0.0.1
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
It runs `npx` against the published package in a clean temp directory with a cold cache,
|
|
76
|
+
so it exercises the registry fetch, the bin shim and the shebang — the path a new user
|
|
77
|
+
actually takes. It exits non-zero and loudly on any failure.
|
|
78
|
+
|
|
79
|
+
## Licence
|
|
80
|
+
|
|
81
|
+
MIT
|
package/bin/ruminate.js
ADDED
package/package.json
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "ruminate",
|
|
3
|
+
"version": "0.0.1",
|
|
4
|
+
"description": "Persistent memory and task context for coding agents",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"bin": { "ruminate": "bin/ruminate.js" },
|
|
7
|
+
"files": ["bin"],
|
|
8
|
+
"keywords": [
|
|
9
|
+
"ai",
|
|
10
|
+
"agents",
|
|
11
|
+
"coding-agent",
|
|
12
|
+
"context",
|
|
13
|
+
"memory",
|
|
14
|
+
"cli",
|
|
15
|
+
"codebase",
|
|
16
|
+
"mcp"
|
|
17
|
+
],
|
|
18
|
+
"engines": { "node": ">=20" },
|
|
19
|
+
"license": "MIT",
|
|
20
|
+
"author": "Finn Bodimeade",
|
|
21
|
+
"homepage": "https://ruminate.so",
|
|
22
|
+
"repository": {
|
|
23
|
+
"type": "git",
|
|
24
|
+
"url": "git+https://github.com/getruminate/ruminate.git"
|
|
25
|
+
}
|
|
26
|
+
}
|