@veda-hq/sarathi 0.6.0 → 0.6.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/README.md +22 -2
- package/dist/cli.js +1 -1
- package/package.json +3 -2
- package/skills/working-rules/SKILL.md +37 -0
package/README.md
CHANGED
|
@@ -111,11 +111,31 @@ every `PreToolUse` call before any handler runs, and at `SessionStart` and
|
|
|
111
111
|
`UserPromptSubmit` tells both Claude and the user why and how to fix it. Other
|
|
112
112
|
events are left alone. It acts only on events the settings route to sarathi.
|
|
113
113
|
|
|
114
|
+
## The working rules
|
|
115
|
+
|
|
116
|
+
`skills/working-rules/SKILL.md` holds the generic rules an agent follows to
|
|
117
|
+
carry a change from first edit to merge: run started work to merge, show then
|
|
118
|
+
push, commit and push without skipping or weakening checks, resolve review
|
|
119
|
+
threads only once the fix is on the remote, and when to stop and ask. A
|
|
120
|
+
project adds its own rules on top.
|
|
121
|
+
|
|
122
|
+
It ships in the package, so a project whose dependencies are installed can
|
|
123
|
+
load it every session with one import line in its `CLAUDE.md` (or in a file
|
|
124
|
+
its `CLAUDE.md` imports). Claude Code reads the import at session start, so a
|
|
125
|
+
checkout with no `node_modules` yet starts without it:
|
|
126
|
+
|
|
127
|
+
```md
|
|
128
|
+
@node_modules/@veda-hq/sarathi/skills/working-rules/SKILL.md
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
The plugin carries the same file as the skill `sarathi:working-rules`.
|
|
132
|
+
|
|
114
133
|
## The plugin
|
|
115
134
|
|
|
116
|
-
`sarathi@veda`, from this repository's marketplace, carries two agents
|
|
135
|
+
`sarathi@veda`, from this repository's marketplace, carries two agents,
|
|
117
136
|
`sarathi:worker` (carries out one decided task end to end) and
|
|
118
|
-
`sarathi:researcher` (answers an external question with sources, read-only)
|
|
137
|
+
`sarathi:researcher` (answers an external question with sources, read-only),
|
|
138
|
+
and the `sarathi:working-rules` skill.
|
|
119
139
|
|
|
120
140
|
```sh
|
|
121
141
|
claude plugin marketplace add veda-hq/veda
|
package/dist/cli.js
CHANGED
|
@@ -12,7 +12,7 @@ import { join, resolve } from 'node:path';
|
|
|
12
12
|
import { ConfigError, compileMatcher, entriesFor, forbiddenSet, loadConfig, longestTimeout, settingsMatcher } from './config.js';
|
|
13
13
|
import { merge } from './merge.js';
|
|
14
14
|
import { runAll } from './run.js';
|
|
15
|
-
export const VERSION = '0.6.
|
|
15
|
+
export const VERSION = '0.6.1';
|
|
16
16
|
const USAGE = `usage: sarathi hook <Event> [--config <file>]
|
|
17
17
|
sarathi check [--config <file>] [--settings <file>]
|
|
18
18
|
sarathi --version
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@veda-hq/sarathi",
|
|
3
|
-
"version": "0.6.
|
|
4
|
-
"description": "Runs a project's Claude Code hooks from one entry per event, with kavach's guards built in, and carries the sarathi plugin's agents.",
|
|
3
|
+
"version": "0.6.1",
|
|
4
|
+
"description": "Runs a project's Claude Code hooks from one entry per event, with kavach's guards built in, and carries the sarathi plugin's agents and working-rules skill.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"coding agents",
|
|
7
7
|
"claude code",
|
|
@@ -30,6 +30,7 @@
|
|
|
30
30
|
"files": [
|
|
31
31
|
"dist",
|
|
32
32
|
"hooks",
|
|
33
|
+
"skills",
|
|
33
34
|
"!dist/**/*.test.js"
|
|
34
35
|
],
|
|
35
36
|
"dependencies": {
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: working-rules
|
|
3
|
+
description: How a coding agent carries a change from first edit to merge in a repository with hooks, CI and review bots - committing, pushing, review threads, and when to stop and ask. Use before the first commit or push of a task.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Working rules
|
|
7
|
+
|
|
8
|
+
**Started work runs to merge.** A task with a commit, exploratory ones
|
|
9
|
+
included, ends only when it is merged, proven unneeded, or stuck on a person.
|
|
10
|
+
Local commits are never an end state.
|
|
11
|
+
|
|
12
|
+
**Show, then push.** Put the evidence (test output, a screenshot, a number)
|
|
13
|
+
on the pull request, then push, without waiting for a word.
|
|
14
|
+
|
|
15
|
+
**Commit.** One logical change per commit, in the repository's message format.
|
|
16
|
+
Never skip the repository's hooks (`--no-verify`), never weaken a check to pass
|
|
17
|
+
it (a type escape, a disabled lint rule, a skipped test): fix the source.
|
|
18
|
+
|
|
19
|
+
**Push.** Push in the background; a full pre-push can outlast a foreground
|
|
20
|
+
timeout. Fix everything it lists, then push again. Never edit the worktree
|
|
21
|
+
while a push runs.
|
|
22
|
+
|
|
23
|
+
**Review threads.** Resolve a thread only after its fix is on the remote: a
|
|
24
|
+
thread resolved on a green head lets the pull request merge without the fix.
|
|
25
|
+
|
|
26
|
+
**Search.** Lists and counts before contents: list or count matches first,
|
|
27
|
+
then read only the lines they name.
|
|
28
|
+
|
|
29
|
+
## Stop and ask when
|
|
30
|
+
|
|
31
|
+
- the task and its specification disagree, or a part cannot be delivered as
|
|
32
|
+
agreed;
|
|
33
|
+
- an architecture decision or a breaking change is needed;
|
|
34
|
+
- a new dependency is needed;
|
|
35
|
+
- anything irreversible: deleting data, changing shared configuration.
|
|
36
|
+
|
|
37
|
+
Say what happened, why, and the options. Do not assume.
|