Skip to content

Commit 7336c3b

Browse files
efecnccursoragent
andcommitted
chore: retarget IsanAgent to git main after oneshot merge
Drop the temporary tools/isanagent-oneshot path pin now that altaidevorg/isanagent#101 landed on main (ea90fa0), and restore the branch-tracked git dependency used by isanagent:sync / CI. Co-authored-by: Cursor <cursoragent@cursor.com>
1 parent 77a1942 commit 7336c3b

253 files changed

Lines changed: 38 additions & 92567 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

docs/cli/IMPLEMENTATION_STATUS.md

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
# ALTAI CLI Implementation Status
22

3-
**Date:** 2026-07-29
3+
**Date:** 2026-07-30
44
**Desktop base:** v0.6.4
5-
**IsanAgent dependency:** temporary path pin `tools/isanagent-oneshot`
6-
(based on `8c9eef2` + oneshot host API; see `docs/cli/isanagent-oneshot-api.md`)
5+
**IsanAgent dependency:** git `altaidevorg/isanagent` `main`
6+
(oneshot host API merged in [`isanagent#101`](https://github.com/altaidevorg/isanagent/pull/101); see `docs/cli/isanagent-oneshot-api.md`)
77

88
## Existing
99

@@ -44,15 +44,8 @@
4444
|---|---|---|
4545
| Full bus-message parity in the CLI journal sink (tool calls, thinking, usage) | Only `run_started` / `run_terminated` are journaled; desktop's richer per-turn events are not yet mirrored by the CLI | **M6 follow-up** |
4646
| Release packaging / installed-binary CI matrix | Partial | `altai-cli smoke` CI job builds release binary + version/doctor/completion/dry-run; full archives/installers still open |
47-
| Upstream merge of oneshot + theme + approval + attachment host API | Local path pin; upstream PR open | Switch back to git rev after [isanagent#99](https://github.com/altaidevorg/isanagent/pull/99) merges |
4847
| Full PTY visual golden frames | Width-fit string snapshots only | Expand in CI matrix follow-up |
4948

50-
## Blocked
51-
52-
| Blocker | Impact | Resolution path |
53-
|---|---|---|
54-
| IsanAgent upstream PR not yet merged | ALTAI still path-pins `tools/isanagent-oneshot` | Merge [isanagent#99](https://github.com/altaidevorg/isanagent/pull/99), then retarget Cargo deps to the git rev |
55-
5649
## Next milestone
5750

5851
### M6 — Packaging, CI matrix, richer journal parity

docs/cli/TEST.md

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -77,8 +77,9 @@
7777

7878
- Added a narrow IsanAgent oneshot host API (`run_oneshot`, `oneshot_prompt`,
7979
`observe_tx`, `scripted_responses`, headless `altai-cli` channel). Temporarily
80-
path-pinned at `tools/isanagent-oneshot` pending upstream merge; see
81-
`docs/cli/isanagent-oneshot-api.md`.
80+
later merged upstream via
81+
[`altaidevorg/isanagent#101`](https://github.com/altaidevorg/isanagent/pull/101);
82+
see `docs/cli/isanagent-oneshot-api.md`.
8283
- `altai run` now performs a real one-shot host session (pretty / json / jsonl,
8384
Ctrl-C → exit 7, timeout → exit 8, non-TTY approval/clarification → exit 4).
8485
- Non-interactive runs default to `--permission plan` when no permission flag is
@@ -100,8 +101,8 @@
100101
- `--no-tui` line mode prints a status banner and labeled outbound lines.
101102
- Width-fit snapshot coverage at 80/100/160 columns (string snapshots; full PTY
102103
golden frames deferred).
103-
- `cargo test -p altai-core -p altai-cli` → 35 tests; IsanAgent `width_fit` +
104-
`theme` + oneshot host tests pass against the path pin.
104+
- `cargo test -p altai-core -p altai-cli` → 35 tests; IsanAgent `width_fit` +
105+
`theme` + oneshot host tests pass against the (then) path pin.
105106

106107
## M3 results — 2026-07-29
107108

@@ -192,6 +193,17 @@
192193
- Oneshot channel resumes approvals/clarifications on the controlling TTY when
193194
available (`prompt_on_tty`); hotkeys `y/n/a/x` normalize to
194195
approve/deny/always/abort. Non-TTY / failed tty still exits with code `4`.
195-
- Synced into IsanAgent upstream PR
196-
[`altaidevorg/isanagent#99`](https://github.com/altaidevorg/isanagent/pull/99).
196+
- Synced into IsanAgent upstream via
197+
[`altaidevorg/isanagent#101`](https://github.com/altaidevorg/isanagent/pull/101)
198+
(superseding the [#99](https://github.com/altaidevorg/isanagent/pull/99) / revert cycle).
197199
- Packaging / installed-binary CI matrix and full PTY golden frames remain open.
200+
201+
## Retarget — drop path pin — 2026-07-30
202+
203+
- After IsanAgent `main` landed the oneshot host surface (`ea90fa0`), ALTAI
204+
`Cargo.toml` deps switched back to
205+
`git = "https://github.com/altaidevorg/isanagent.git", branch = "main"`.
206+
- Removed `tools/isanagent-oneshot`.
207+
- `cargo test -p altai-core -p altai-cli` and `cargo check -p altai --lib`
208+
passed against the git tip; `pnpm isanagent:sync` (`cargo update -p isanagent`)
209+
works again.

docs/cli/isanagent-oneshot-api.md

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
# IsanAgent oneshot host API (M1)
22

3-
**Status:** Temporary path pin pending upstream merge
4-
**Base revision:** `8c9eef2cf63f0b888f5b73778f056ba7d21467cf`
5-
**Local pin:** `tools/isanagent-oneshot`
6-
**Diff artifacts:** `docs/cli/isanagent-oneshot-api.*.diff`
3+
**Status:** Merged upstream — ALTAI tracks `altaidevorg/isanagent` `main`
4+
**Merged via:** [`altaidevorg/isanagent#101`](https://github.com/altaidevorg/isanagent/pull/101) (`ea90fa0`)
5+
**Historical base (path pin era):** `8c9eef2cf63f0b888f5b73778f056ba7d21467cf`
6+
**Diff artifacts (historical):** `docs/cli/isanagent-oneshot-api.*.diff`
77

88
## Public additions
99

@@ -48,10 +48,11 @@ pub use HostThemeMode;
4848

4949
## Upstream status
5050

51-
Proposed as [`altaidevorg/isanagent#99`](https://github.com/altaidevorg/isanagent/pull/99).
52-
ALTAI still path-depends on `tools/isanagent-oneshot` until that PR merges;
53-
then switch `src-tauri/Cargo.toml` and `src-tauri/crates/altai-cli/Cargo.toml`
54-
back to the git revision and delete the local pin.
51+
Host oneshot / theme / approval / attachment APIs landed on IsanAgent `main` via
52+
[#101](https://github.com/altaidevorg/isanagent/pull/101) (superseding the earlier
53+
[#99](https://github.com/altaidevorg/isanagent/pull/99) / revert cycle). ALTAI
54+
depends on git `main` again; the temporary `tools/isanagent-oneshot` path pin is
55+
removed. `pnpm isanagent:sync` / CI continue to refresh the lockfile tip.
5556

5657
## M5 / M6 notes
5758

src-tauri/Cargo.lock

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src-tauri/Cargo.toml

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -65,9 +65,12 @@ tar = "0.4"
6565
base64 = "0.22"
6666
pdf-extract = "0.12"
6767

68-
# Temporary path pin for the M1 oneshot host API. Switch back to the upstream
69-
# git revision after the oneshot host PR merges into altaidevorg/isanagent.
70-
isanagent = { path = "../tools/isanagent-oneshot" }
68+
# İsanAgent — embedded as Rust crate (direct API, no sidecar).
69+
# Track upstream `main`. Dev (`beforeDevCommand`), CI, and release all run
70+
# `cargo update -p isanagent` before compile so builds pick up the tip.
71+
# Cargo.lock still records the last resolved commit for reproducibility;
72+
# `.github/workflows/isanagent-bump.yml` opens a sync PR when that tip moves.
73+
isanagent = { git = "https://github.com/altaidevorg/isanagent.git", branch = "main" }
7174
tauri-plugin-single-instance = "2"
7275
tauri-plugin-cli = "2"
7376
tauri-plugin-deep-link = "2"

src-tauri/crates/altai-cli/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ altai-core = { path = "../altai-core" }
1515
altai-protocol = { path = "../altai-protocol" }
1616
clap = { version = "4.6.1", features = ["derive"] }
1717
clap_complete = "4.6.0"
18-
isanagent = { path = "../../../tools/isanagent-oneshot" }
18+
isanagent = { git = "https://github.com/altaidevorg/isanagent.git", branch = "main" }
1919
serde = { version = "1", features = ["derive"] }
2020
serde_json = "1"
2121
tokio = { version = "1", features = ["rt-multi-thread", "signal", "sync", "time", "macros", "io-util", "io-std"] }

tools/isanagent-oneshot/.cargo-ok

Whitespace-only changes.

tools/isanagent-oneshot/.github/workflows/ci.yml

Lines changed: 0 additions & 60 deletions
This file was deleted.

tools/isanagent-oneshot/.github/workflows/release-artifacts.yml

Lines changed: 0 additions & 119 deletions
This file was deleted.

tools/isanagent-oneshot/.gitignore

Lines changed: 0 additions & 18 deletions
This file was deleted.

0 commit comments

Comments
 (0)