Repository navigation
feat: your skill and knowledge review requests in Codex — /altimate-code:rules #8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,5 +1,5 @@ | ||
| --- | ||
| description: Review the team rules proposed from your corrections in a project linked to an Altimate workspace, and see the workspace's team rules and the review status of your proposals | ||
| description: Review the team rules proposed from your corrections in a project linked to an Altimate workspace, and see the workspace's team rules, the review status of your proposals, and your skill and knowledge requests | ||
| --- | ||
|
|
||
| The user invoked `/altimate-code:rules`. In a project linked to an Altimate workspace, altimate-code proposes a team rule when the user corrects the agent on the same topic in two sessions, corrects a team rule the session was given, or asks to remember something as a team rule. Those proposals wait here for the user's answer. Nothing reaches teammates until the workspace owner approves it. | ||
|
|
@@ -19,9 +19,23 @@ Workflow (follow in order): | |
| - An error saying `proposals` is an unknown command: tell the user to update altimate-code (`npm install -g altimate-code@latest`) and stop. | ||
| - `FileSystem.open (…altimate-code/log/…)`: Codex's `workspace-write` sandbox blocks the CLI's log; tell the user to allow it as the README's troubleshooting table says, and stop. | ||
|
|
||
| Then list the user's own skill and knowledge requests to the workspace (read-only here): | ||
| ```bash | ||
| for ALTIMATE_NAME in altimate-code altimate; do | ||
| ALTIMATE_BIN="$(unalias "$ALTIMATE_NAME" 2>/dev/null; unset -f "$ALTIMATE_NAME" 2>/dev/null; command -v "$ALTIMATE_NAME")" | ||
| [ -x "$ALTIMATE_BIN" ] && break || ALTIMATE_BIN= | ||
| done | ||
| [ -n "$ALTIMATE_BIN" ] || { echo "altimate-code CLI not found (tried altimate-code, altimate)" >&2; exit 127; } | ||
| "$ALTIMATE_BIN" workspace review status --json < /dev/null | ||
| ``` | ||
| - Exit 0 answers JSON with `workspace_name`, `items`, `skipped` and `complete`. Each item has `kind` (`skill` or `knowledge`), `name`, `status` (`pending`, `active`, `rejected`, `superseded`, `withdrawn` or `retired`), `change` (`add` or `edit`), `reviewed_by_name`, `review_reason` and `expired`. | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. SUGGESTION: These two response fields are introduced here, but the display rules in step 2 read only |
||
| - Any other exit (not linked, not signed in, a server without review, an older altimate-code that has no `review` command): leave this part out without comment. | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. WARNING: This bullet swallows the sandbox case the next bullet asks to report "Any other exit" includes the no-network failure in Codex's default sandbox, so an agent following this bullet literally leaves the section out silently — the exact environment this feature targets — and never emits the pointer required on the next line. Scope this bullet to the listed causes, for example "Any other exit (except the sandbox connection error below)", so the two rules cannot both match the same exit. |
||
| - Codex's sandbox has no network, so this can fail there with a connection error: then say once that `altimate-code workspace review status`, run in a terminal, lists them (or the Altimate web app does), and go on. | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. SUGGESTION: Recovery guidance names only The resolver block immediately above falls back to |
||
|
|
||
| 2. **Show the state.** The JSON has `workspace` (`name`, `owner_name`, `is_owner`; `null` when the project is not linked), `proposals`, `team_rules` and `mine`. Show, briefly: | ||
| - the number of team rules in the workspace, and their texts when there are 10 or fewer; | ||
| - the user's own proposals in `mine` that are not yet active, with their `status` and, for a rejected one, the `reason`; | ||
| - the user's skill and knowledge requests, newest first: kind, name, status (`pending` → waiting for review, `active` → approved, `rejected`, `withdrawn`, `retired` → removed from the workspace), "update" for `change: edit`, the reviewer and the reason when given, and "waiting over 14 days" when `expired`. Do not list `superseded` ones (replaced by a newer request); say how many there were instead. Withdrawing a waiting request or removing an approved one happens in the Altimate web app, the altimate-code TUI (`/rules`) or the VS Code extension, not here; | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. SUGGESTION: "newest first" cannot be applied from the documented item shape The item fields listed on line 31 contain no timestamp ( |
||
| - then each entry in `proposals`, one at a time, as described in step 3. | ||
|
|
||
| If `proposals` is empty, say that no proposed rules are waiting and stop. | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
SUGGESTION: State the altimate-code release requirement, as 1.2.0 did
The 1.2.0 entry ends with "The hooks need an altimate-code release with
learn hook; with an older one they do nothing". This release needs an altimate-code withworkspace review status, and on an older CLI/altimate-code:rulessilently omits the section (rules.md line 32), so the docs are the only place a user can learn why. Add the equivalent sentence here or in the README.