6.2 KiB
@aoagents/ao-plugin-scm-github
0.9.1
Patch Changes
- 2d4c457: Fix canary nightly to include all publishable packages and fix Next.js import.meta.url build path issue
- Updated dependencies [
2d4c457]- @aoagents/ao-core@0.9.1
0.9.0
Patch Changes
- Updated dependencies [
73bed33] - Updated dependencies [
a610601] - Updated dependencies [
7d9b862] - Updated dependencies [
6d48022] - Updated dependencies [
fcedb25] - Updated dependencies [
94981dc] - Updated dependencies [
2980570] - Updated dependencies [
d5d0f07]- @aoagents/ao-core@0.9.0
0.8.0
Patch Changes
- Updated dependencies
- @aoagents/ao-core@0.8.0
0.7.0
Minor Changes
-
0f5ae0b: feat: native Windows support
AO now runs natively on Windows. The default runtime on Windows is
process
(ConPTY vianode-pty+ named pipes — no tmux, no WSL); the dashboard,
agents (claude-code, codex, kimicode, aider, opencode, cursor),ao doctor,
andao updateall work out of the box. Each session gets a small detached
pty-host helper that wraps a ConPTY behind\\.\pipe\ao-pty-<sessionId>,
registered soao stopcan reach it.A new cross-platform abstraction layer (
packages/core/src/platform.ts)
centralises every platform branch behind helpers likeisWindows(),
getDefaultRuntime(),getShell(),killProcessTree(),findPidByPort(),
andgetEnvDefaults(). Path comparison usespathsEqual/
canonicalCompareKeyto handle NTFS case-insensitivity. PATH wrappers for
agent plugins (gh,git) ship as.cjs+.cmdshims on Windows;
script-runnerruns.ps1siblings of.shscripts via PowerShell. New
ao-doctor.ps1/ao-update.ps1shipped.ao openis now cross-platform: it sources sessions fromsm.list()
instead oftmux list-sessions(soruntime-processsessions on Windows
appear), and the open action branches per OS —open-iterm-tabstays the
macOS path, native handling on Windows and Linux.Behaviour on macOS and Linux is unchanged. Every Windows path is gated
behindisWindows();runtime-tmuxand the bash hook flows are untouched.See
docs/CROSS_PLATFORM.mdfor the developer reference (helper inventory,
EPERM-vs-ESRCH gotcha, PowerShell-vs-bash differences, pre-merge checklist).
The Windows runtime architecture (pty-host, pipe protocol, registry, sweep,
mux WS Windows branch) is documented indocs/ARCHITECTURE.md.
Patch Changes
- Updated dependencies [
0f5ae0b] - Updated dependencies [
fe33bb7] - Updated dependencies [
7c46dc9]- @aoagents/ao-core@0.7.0
0.6.0
Patch Changes
- Updated dependencies
- Updated dependencies [
40aeb78] - Updated dependencies
- Updated dependencies
- @aoagents/ao-core@0.6.0
0.5.0
Patch Changes
- Updated dependencies [
dd07b6b]- @aoagents/ao-core@0.5.0
0.4.0
Patch Changes
-
c8af50f: Make
ProjectConfig.repooptional to support projects without a configured remote.Migration:
ProjectConfig.repois nowstring | undefinedinstead ofstring.
External plugins that accessproject.repodirectly (e.g.project.repo.split("/")) must
add a null check first. Use a guard likeif (!project.repo) return null;or a helper that
throws with a descriptive error. -
a8bc746: scm-github: cache 4 more hot-path reads (CI, mergeability, pending comments, detectPR)
Completes the bulk of the AO-side caching work alongside the prior PR view
cache. Per-method TTLs match the approved policy: 5s max for
decision-influencing fields.getCIChecks(gh pr checks): 5s TTLgetMergeability(compositepr view+ CI + state): 5s TTL on the composite resultgetPendingComments(gh api graphqlreview threads): 5s TTL — ETag doesn't help on GraphQL per Experiment 2detectPR(gh pr list --head BRANCH): 5s TTL, positive-only —[]results are never cached so a freshly created PR surfaces on the next poll. Branch-keyed entry is invalidated bymergePR/closePRalongside the number-keyed entries.
Combined with the prior PR view cache, this covers the top 6 AO-side gh
operation categories that accounted for ~85% of calls in tier-5 bench traces.Tests: 85 existing + 9 new cache tests, all 162 passing.
-
a8bc746: scm-github: cache 5
gh pr viewcallsites with per-method TTLsThe lifecycle worker repeatedly polls each PR for state, summary, reviews,
and review decision. Trace data showedgh pr viewwas the single largest
AO-side endpoint at 1,280 calls per 5-session tier-5 run with >97% duplicate
rate (e.g. PR #184 polled 86× for--json statealone in 11.5 minutes).Adds an in-process per-instance cache inside
createGitHubSCM(), keyed by
${owner}/${repo}#${prKey}:${method}so different field-sets stay isolated.
Per-method TTLs balance reduction against staleness on decision-influencing
fields:resolvePR: 60s (identity metadata only — number, url, title, branch refs, isDraft)getPRState: 5sgetPRSummary: 5sgetReviews: 5sgetReviewDecision: 5s
assignPRToCurrentUser,mergePR, andclosePReach invalidate the entire
PR cache for that PR after the mutation, so AO never sees stale state from
its own writes. Failures are not cached.getCIChecksFromStatusRollupandgetMergeabilityare intentionally NOT
cached here — those need ETag-based revalidation, not blind TTL, and will
land in a follow-up change.Expected reduction: ~1,165 of ~1,280
gh pr viewcalls per tier-5 run.Tests: 73 existing + 12 new cache tests, all passing.
-
Updated dependencies [
2306078] -
Updated dependencies [
faaddb1] -
Updated dependencies [
f330a1e] -
Updated dependencies [
a862327] -
Updated dependencies [
331f1ce] -
Updated dependencies [
703d584] -
Updated dependencies [
f674422] -
Updated dependencies [
62353eb] -
Updated dependencies [
bd36c7b] -
Updated dependencies [
e7ad928] -
Updated dependencies [
ca8c4cc] -
Updated dependencies [
7b82374] -
Updated dependencies [
4701122] -
Updated dependencies [
c8af50f] -
Updated dependencies [
bcdda4b] -
Updated dependencies [
1cbf657] -
Updated dependencies [
c447c7c] -
Updated dependencies [
a45eb32] -
Updated dependencies [
7072143] -
Updated dependencies [
ed2dcea]- @aoagents/ao-core@0.4.0
0.2.0
Patch Changes
- Updated dependencies [
3a650b0]- @composio/ao-core@0.2.0