@learnaltitude/cli 0.1.0 → 0.3.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 +79 -0
- package/bin/altitude.js +0 -0
- package/dist/cli.js +47 -36
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -11,3 +11,82 @@ npm install -g @learnaltitude/cli
|
|
|
11
11
|
|
|
12
12
|
Pair the CLI with your account at [app.learnaltitude.com](https://app.learnaltitude.com).
|
|
13
13
|
Supported agents are Claude Code and Codex.
|
|
14
|
+
|
|
15
|
+
## Connect, bind, and inspect a project
|
|
16
|
+
|
|
17
|
+
Use the installed agent adapter's connect command to complete the browser device flow. Connecting
|
|
18
|
+
stores a scoped bearer token in the CLI data directory (by default, `~/.altitude/token.json`) with
|
|
19
|
+
owner-only permissions; it does not activate hooks in every directory.
|
|
20
|
+
|
|
21
|
+
A directory declares WHICH journey it works. From the root of the project, pick from your
|
|
22
|
+
journey list:
|
|
23
|
+
|
|
24
|
+
```sh
|
|
25
|
+
altitude bind --list # show your journeys and their statuses
|
|
26
|
+
altitude bind --journey <id> # bind this directory to one of them
|
|
27
|
+
altitude bind # binds directly when exactly one journey is bindable
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
Binding writes a `.altitude` marker in that directory. Hooks discover the nearest marker while
|
|
31
|
+
walking upward, so the project and its subdirectories are active; invocations without a working
|
|
32
|
+
directory or valid marker are dormant and produce no capture, down-sync, context, or gate work.
|
|
33
|
+
Gate failures in a bound project still fail open. Several directories may bind the same journey
|
|
34
|
+
(git worktrees are the normal case); each directory holds exactly one journey, and its down-synced
|
|
35
|
+
working set is cached per journey in an owner-only file for offline sessions. An abandoned journey
|
|
36
|
+
stays visible in the list but cannot be bound; a paused journey can. When the refreshed or cached
|
|
37
|
+
journey list marks it paused, session start prints the server's paused notice when present and
|
|
38
|
+
keeps gates dormant until a later list refresh observes that you resumed it on Altitude (never
|
|
39
|
+
automatically from the terminal). Older responses without a notice stay silent. When the server
|
|
40
|
+
refuses a binding's journey (deleted, abandoned, or not entitled), the session prints the server's
|
|
41
|
+
explanation instead of silently substituting another project.
|
|
42
|
+
`altitude diagnostics` records these misses and stale bindings; the precise hook behavior is
|
|
43
|
+
defined in the [workshop/server
|
|
44
|
+
protocol](../../docs/mvp-plan.md#workshop--server-protocol-packagesshared).
|
|
45
|
+
If the project is already bound to another journey, inspect the IDs before deliberately replacing
|
|
46
|
+
the marker with `altitude bind --force`.
|
|
47
|
+
|
|
48
|
+
Use `altitude task --json` for a network-first snapshot of the BOUND journey with local-cache
|
|
49
|
+
fallback; its `source` field says which was used, `journey_status` carries the journey's
|
|
50
|
+
last-known status, and `journey_miss` carries the server's refusal when the bound journey was not
|
|
51
|
+
served. `altitude status` is a local snapshot that includes the nearest binding plus the bound
|
|
52
|
+
journey's cached working-set summaries. Binding requires a connected device token; the command
|
|
53
|
+
tells unconnected users to connect and directs users without a bindable journey back to Altitude.
|
|
54
|
+
|
|
55
|
+
## Copied skills installs and updates
|
|
56
|
+
|
|
57
|
+
Claude Code marketplace installs remain the recommended Claude path and update through that
|
|
58
|
+
marketplace. For Codex or a manual Claude Code copy, install the public skills through the target
|
|
59
|
+
declaration shipped by the relevant adapter:
|
|
60
|
+
|
|
61
|
+
```sh
|
|
62
|
+
altitude skills install --adapter-config /path/to/adapter/skills-install.json
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
The first install remembers the resolved target in the CLI data directory (by default,
|
|
66
|
+
`~/.altitude/skills-manifest.json`), including the exact `jasonku09/altitude-skills` commit and a
|
|
67
|
+
SHA-256 content hash for every managed file. Later updates need no adapter flag:
|
|
68
|
+
|
|
69
|
+
```sh
|
|
70
|
+
altitude update
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
Use `--ref <commit-sha>` with either command to pin or roll back to a particular public-repository
|
|
74
|
+
commit. Updates change only manifest-managed files plus new upstream paths; unrelated skills in a
|
|
75
|
+
shared target are left alone, while managed files removed upstream are removed locally. An edited
|
|
76
|
+
managed file or colliding pre-CLI copy is backed up in the CLI data directory (by default,
|
|
77
|
+
`~/.altitude/skills-backups/`) before the upstream version replaces or removes it. Backups never
|
|
78
|
+
live in an agent skills directory. If no copied install is configured, the skills step is an
|
|
79
|
+
informative no-op because marketplace or plugin-managed skills update through the agent.
|
|
80
|
+
After the skills step completes or is skipped, `altitude update` asks the detected global package
|
|
81
|
+
manager to update `@learnaltitude/cli`; if detection or execution fails, it prints the exact manual
|
|
82
|
+
command instead. A genuine copied-skills sync failure stops before the CLI self-update.
|
|
83
|
+
|
|
84
|
+
## Network disclosure
|
|
85
|
+
|
|
86
|
+
The distributed client uses the user's own agent subscription and no Altitude-held API key.
|
|
87
|
+
Interactive `connect`, `diagnostics`, and `update` commands make anonymous, direct version checks
|
|
88
|
+
to GitHub (the public skills repository's `main` commit) and the npm registry (the CLI's latest
|
|
89
|
+
version). Results are cached in the CLI data directory for about 24 hours. Skills downloads also
|
|
90
|
+
come directly from GitHub. These requests do not pass through the Altitude service and carry no
|
|
91
|
+
Altitude credentials. Hooks, gates, queue flushers, and other non-interactive paths never perform
|
|
92
|
+
the version check; all check failures are silent and cannot change a command's exit code.
|
package/bin/altitude.js
CHANGED
|
File without changes
|