unitbob 0.1.7 → 0.1.8
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/README.md +45 -0
- package/dist/link.js +3 -3
- package/package.json +1 -1
package/README.md
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# Unitbob
|
|
2
|
+
|
|
3
|
+
A living map of your app's business parts. Each important seam gets an automatic
|
|
4
|
+
test — a "lamp" on the map. Green means fine, red means something broke.
|
|
5
|
+
|
|
6
|
+
You work through Claude Code. You need: Node 18+, Python 3.10+.
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Install (once)
|
|
11
|
+
|
|
12
|
+
**With a prompt:**
|
|
13
|
+
```
|
|
14
|
+
Add the Unitbob plugin marketplace: sergeygershun/unitbob-connector
|
|
15
|
+
Install the unitbob plugin
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
**With commands (in the terminal):**
|
|
19
|
+
```
|
|
20
|
+
claude plugin marketplace add sergeygershun/unitbob-connector
|
|
21
|
+
claude plugin install unitbob@unitbob
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Restart the session so the commands load.
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
## Full cycle
|
|
29
|
+
|
|
30
|
+
| Step | With a prompt (just type in chat) | With a command |
|
|
31
|
+
|------|-----------------------------------|----------------|
|
|
32
|
+
| 1. Build the map | `Build my Unitbob map` | `/unitbob:map` |
|
|
33
|
+
| 2. Generate tests | `Generate the guardrail tests` | `/unitbob:suite` |
|
|
34
|
+
| 3. Run the checks | `Run the checks` | `/unitbob:check` |
|
|
35
|
+
| 4. Fix a red lamp | `Fix guardrail <id>` | `/unitbob:fix <id>` |
|
|
36
|
+
| 5. Open the map | `Open my Unitbob map` | `/unitbob:show` |
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## How to read it
|
|
41
|
+
|
|
42
|
+
- **Green lamp** — the behavior works.
|
|
43
|
+
- **Red lamp** — something the structure relied on broke. Copy its `id` and run
|
|
44
|
+
step 4.
|
|
45
|
+
- The project links itself by folder name — nothing to set up by hand.
|
package/dist/link.js
CHANGED
|
@@ -7,9 +7,9 @@ import { homedir } from 'node:os';
|
|
|
7
7
|
import { basename, dirname, isAbsolute, join, resolve, sep } from 'node:path';
|
|
8
8
|
import { CONFIG_FILE, readLocalRepoId, writeConfigFile } from "./config.js";
|
|
9
9
|
import { registerRepo, WireError } from "./wire.js";
|
|
10
|
-
//
|
|
11
|
-
// server
|
|
12
|
-
export const DEFAULT_SERVER = '
|
|
10
|
+
// Public Unitbob brain used by default. Local development can still pass an
|
|
11
|
+
// explicit server URL or edit `.unitbob.json`.
|
|
12
|
+
export const DEFAULT_SERVER = 'https://unitbob-73a4082838d3.herokuapp.com';
|
|
13
13
|
// Make sure this project is linked, resolving the repo by name on every run
|
|
14
14
|
// (cheap — the server find-or-creates) and reconciling with the local file:
|
|
15
15
|
// - no working link (file missing / repo_id 0 / non-int) → register, write
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "unitbob",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.8",
|
|
4
4
|
"description": "Unitbob connector — thin local hands for the Unitbob Rails brain. Owns no domain logic: it runs tools, relays bytes over the wire, and prints what the server returns.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|