@getopencrawl/cli-win32-x64 0.0.0-stage → 0.2.0

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 CHANGED
@@ -1,3 +1,100 @@
1
- # Temporary Holding Version
1
+ # opencrawl
2
2
 
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
3
+ The OpenCrawl v2 CLI. This initial release installs an automatically updating
4
+ command and signs you in. **Index queries are not available yet.**
5
+
6
+ Once published:
7
+
8
+ ```sh
9
+ npm install -g @getopencrawl/cli@next
10
+ opencrawl login
11
+ opencrawl status --json
12
+ ```
13
+
14
+ For SSH, remote machines and coding agents:
15
+
16
+ ```sh
17
+ opencrawl login --no-browser --json
18
+ ```
19
+
20
+ Open the printed URL on any machine, confirm the displayed code and sign in.
21
+ The CLI waits for approval. It needs no client secret, inbound port, localhost
22
+ callback or browser on the machine running the command. No authentication runs
23
+ during package installation. Installation does not configure agents or telemetry.
24
+
25
+ `whoami` verifies your identity with the service. `status` reports the version,
26
+ sign-in state and unavailable index. `logout` removes this deployment's local
27
+ credentials; it does not revoke other devices or the server session. Use your
28
+ identity provider's session controls to revoke access remotely.
29
+
30
+ `--api https://your-deployment.example` or `OPENCRAWL_API_URL` selects a deployment.
31
+ Credentials stay separate for each origin. The deployment publishes the public
32
+ OAuth configuration at `/.well-known/opencrawl-cli`; the CLI has no provider SDK,
33
+ cloud credential, server secret or dependency on the hosted shell. Only HTTPS
34
+ is accepted, except HTTP loopback for local development.
35
+
36
+ Credentials live in `$XDG_CONFIG_HOME/opencrawl` (default `~/.config/opencrawl`),
37
+ with directory mode 0700 and file mode 0600 on POSIX. `OPENCRAWL_CONFIG_HOME`
38
+ overrides the configuration base directory. Refresh-token rotation uses a
39
+ per-deployment process lock and atomic writes. Tokens never appear in output.
40
+ Windows uses the user's profile directory and its inherited filesystem ACLs.
41
+
42
+ `--json` returns `{schemaVersion:1,data:...}` or
43
+ `{schemaVersion:1,error:{code,message}}`. Progress and approval instructions stay
44
+ on stderr. Exit codes: 0 success, 1 service/network failure, 2 sign-in required
45
+ or forbidden, 64 invalid arguments, 130 interrupted.
46
+
47
+ ## Updates and distribution
48
+
49
+ TypeScript compiled with Bun 1.3.14 produces a self-contained binary. Users need
50
+ Node 22+ and npm for the bootstrap, never Bun. npm platform packages cover macOS
51
+ arm64/x64, Linux glibc arm64/x64 and Windows x64. Alpine/musl and Windows arm64
52
+ are not supported in v0. Platform packages are optional dependencies at the exact
53
+ launcher version; there are no install scripts.
54
+
55
+ After a command, the launcher starts a detached updater at most once per day.
56
+ It checks the npm `next` release channel, installs into a private user-owned cache with
57
+ npm integrity verification and install scripts disabled, then atomically selects
58
+ the complete release. The next invocation uses it. No sudo or global-directory
59
+ writes are needed. Offline/update failures preserve the working copy and retry
60
+ after 15 minutes. Concurrent updater processes share a lock; updates never
61
+ downgrade. An unused installation updates when it is next invoked, not on a timer.
62
+
63
+ `OPENCRAWL_NO_UPDATE=1` disables automatic updates for reproducible agent runs.
64
+ `opencrawl update [--json]` explicitly updates from that same channel. Cached releases live under
65
+ `$XDG_CACHE_HOME/opencrawl` (default `~/.cache/opencrawl`); previous releases remain
66
+ available for recovery. Install a newer npm version directly to override an older
67
+ cached version. Set the opt-out and remove `current.json` to return to the npm
68
+ installed version. Standalone binary installation/self-update is not offered in
69
+ this release; distribute the npm command.
70
+
71
+ ## Development and release
72
+
73
+ ```sh
74
+ bun install --cwd cli --frozen-lockfile --ignore-scripts
75
+ bun run --cwd cli typecheck
76
+ bun test cli
77
+ cd cli
78
+ bun run src/cli.ts --help
79
+ bun scripts/build.ts --current # local smoke
80
+ bun scripts/build.ts # all five platform packages
81
+ ```
82
+
83
+ The `next` dist-tag keeps this new client separate from the existing v1 `latest`
84
+ release. Publishing must never move that v1 tag. The dedicated CLI workflow builds and signs on macOS, tests those same
85
+ binaries on macOS/Linux/Windows, then publishes the five platform packages first, then publishes `@getopencrawl/cli` last. A failed platform
86
+ publication cannot advertise an incomplete stable launcher. Retry skips already
87
+ published immutable versions. Increment `cli/package.json` for every release.
88
+ The main core package retains its separate private GitHub Packages release.
89
+
90
+ Create the free npm `getopencrawl` organization and grant the publisher access to
91
+ its packages before the first release. Bootstrap publication uses an npm token
92
+ or interactive npm authentication; configure npm trusted publishing for each
93
+ package afterwards. A public npm package does not require a public GitHub repo,
94
+ but its tarballs and binaries are public. Review the package allowlist with
95
+ `npm pack --dry-run` before publishing. The current construction license remains
96
+ UNLICENSED pending the repository's separate public-license decision.
97
+
98
+ Prior art: OnePatch's npm/native launcher, device login, automatic refresh and
99
+ background upgrades; Glen's small npm entry point for agents. No query command,
100
+ agent hooks, MCP integration or background daemon is included in this release.
@@ -0,0 +1,4 @@
1
+ [diffend] Oversized file quarantined before diffing.
2
+ name: package/bin/opencrawl.exe
3
+ size: 97758208 bytes
4
+ sha256: 5fb1443e37954b9c04e928ffc0e085a5b80952b1ae97d6ff066b9b098f0ca143
package/package.json CHANGED
@@ -1,6 +1,24 @@
1
1
  {
2
2
  "name": "@getopencrawl/cli-win32-x64",
3
- "version": "0.0.0-stage",
4
- "stub": true,
5
- "description": "Temporary package placeholder for staged publishing"
6
- }
3
+ "version": "0.2.0",
4
+ "description": "OpenCrawl binary for win32/x64",
5
+ "license": "UNLICENSED",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "https://github.com/1patch/opencrawl-core.git",
9
+ "directory": "cli"
10
+ },
11
+ "os": [
12
+ "win32"
13
+ ],
14
+ "cpu": [
15
+ "x64"
16
+ ],
17
+ "files": [
18
+ "bin/opencrawl.exe"
19
+ ],
20
+ "publishConfig": {
21
+ "access": "public",
22
+ "registry": "https://registry.npmjs.org"
23
+ }
24
+ }