@whittlelabs/sifter 0.5.0 → 0.5.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 +5 -8
- package/bin.js +9 -4
- package/bin.js.map +2 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,16 +1,13 @@
|
|
|
1
1
|
# @whittlelabs/sifter
|
|
2
2
|
|
|
3
|
-
The Whittle Sifter is a paired AI reviewer for [Whittle Sift](https://sift.
|
|
3
|
+
The Whittle Sifter is a paired AI reviewer for [Whittle Sift](https://sift.stage.whittlelabs.com). It runs on your machine, executes review prompts against your own AI credentials (Claude Code, Anthropic API key, etc.), and submits the results back to Sift. Token spend stays on your account.
|
|
4
4
|
|
|
5
5
|
## Install
|
|
6
6
|
|
|
7
|
-
`@whittlelabs/sifter` is published to
|
|
7
|
+
`@whittlelabs/sifter` is published publicly to npmjs.com (released by
|
|
8
|
+
`sifter-release.yml` on a version bump):
|
|
8
9
|
|
|
9
10
|
```bash
|
|
10
|
-
# One-time: tell npm where to find @whittlelabs packages
|
|
11
|
-
echo "@whittlelabs:registry=https://npm.pkg.github.com" >> ~/.npmrc
|
|
12
|
-
echo "//npm.pkg.github.com/:_authToken=YOUR_GITHUB_TOKEN" >> ~/.npmrc
|
|
13
|
-
|
|
14
11
|
npm install -g @whittlelabs/sifter
|
|
15
12
|
```
|
|
16
13
|
|
|
@@ -24,11 +21,11 @@ Visit Sift's **Settings → Pair a Sifter**. Sift will display a pairing code an
|
|
|
24
21
|
whittle-sifter init --pairing-code=ABCD-1234
|
|
25
22
|
```
|
|
26
23
|
|
|
27
|
-
The Sifter defaults to the
|
|
24
|
+
The Sifter defaults to the stage Keep instance (`https://keep.stage.whittlelabs.com`). To pair against a different environment, pass `--keep-url`:
|
|
28
25
|
|
|
29
26
|
```bash
|
|
30
27
|
whittle-sifter init \
|
|
31
|
-
--keep-url=https://keep.
|
|
28
|
+
--keep-url=https://keep.test.whittlelabs.com \
|
|
32
29
|
--pairing-code=ABCD-1234
|
|
33
30
|
```
|
|
34
31
|
|
package/bin.js
CHANGED
|
@@ -17985,7 +17985,10 @@ var require_canonicalise = __commonJS({
|
|
|
17985
17985
|
transitionResolver: options.transition.resolver,
|
|
17986
17986
|
transitionContext: extractTransitionContext(options.transition)
|
|
17987
17987
|
} : {},
|
|
17988
|
-
...options.qualityGates !== void 0 ? { qualityGates: serialiseQualityGates(options.qualityGates) } : {}
|
|
17988
|
+
...options.qualityGates !== void 0 ? { qualityGates: serialiseQualityGates(options.qualityGates) } : {},
|
|
17989
|
+
// Normalise the emit spec: `true` → emit-all (`{}`); object → as-is;
|
|
17990
|
+
// `false`/omitted → not emitted (field absent).
|
|
17991
|
+
...options.emitOutput === true ? { emitOutput: {} } : options.emitOutput && typeof options.emitOutput === "object" ? { emitOutput: options.emitOutput } : {}
|
|
17989
17992
|
};
|
|
17990
17993
|
}
|
|
17991
17994
|
function interpolate(value, env) {
|
|
@@ -18732,6 +18735,7 @@ var require_claude_code = __commonJS({
|
|
|
18732
18735
|
var child_process_1 = require("child_process");
|
|
18733
18736
|
var loom_1 = require_dist3();
|
|
18734
18737
|
var validate_output_1 = require_validate_output();
|
|
18738
|
+
var apply_1 = require_apply();
|
|
18735
18739
|
var DEFAULT_TIMEOUT = 6e5;
|
|
18736
18740
|
var ClaudeCodeExecutor = class {
|
|
18737
18741
|
capability;
|
|
@@ -18823,10 +18827,11 @@ var require_claude_code = __commonJS({
|
|
|
18823
18827
|
}
|
|
18824
18828
|
};
|
|
18825
18829
|
function createClaudeCodeExecutor(config, capabilityId = "claude-code") {
|
|
18826
|
-
const
|
|
18827
|
-
if (typeof
|
|
18830
|
+
const cwdRaw = config.cwd;
|
|
18831
|
+
if (typeof cwdRaw !== "string" || cwdRaw.length === 0) {
|
|
18828
18832
|
throw new Error('ClaudeCodeExecutor requires a non-empty "cwd" string in config');
|
|
18829
18833
|
}
|
|
18834
|
+
const cwd = (0, apply_1.expandHome)(cwdRaw);
|
|
18830
18835
|
const validated = { cwd, capabilityId };
|
|
18831
18836
|
if (config.model !== void 0) {
|
|
18832
18837
|
if (typeof config.model !== "string")
|
|
@@ -20710,7 +20715,7 @@ var import_shuttle = __toESM(require_dist5());
|
|
|
20710
20715
|
// package.json
|
|
20711
20716
|
var package_default = {
|
|
20712
20717
|
name: "@whittlelabs/sifter",
|
|
20713
|
-
version: "0.5.
|
|
20718
|
+
version: "0.5.1",
|
|
20714
20719
|
description: "Whittle Sifter: paired AI reviewer for Whittle Sift job pools.",
|
|
20715
20720
|
bin: {
|
|
20716
20721
|
"whittle-sifter": "./dist/bin.js"
|