From e96f8744690aa446f6954d4db4196b692691f228 Mon Sep 17 00:00:00 2001 From: rootiest Date: Fri, 12 Jun 2026 22:25:47 -0400 Subject: [PATCH] feat(agy): wrap agy with agents-init --agents, same as claude wrapper --- docs/fish-config.md | 20 +++++++++++++++++--- functions/agy.fish | 36 ++++++++++++++++++++++++++++++++++++ functions/antigravity.fish | 2 +- 3 files changed, 54 insertions(+), 4 deletions(-) create mode 100644 functions/agy.fish diff --git a/docs/fish-config.md b/docs/fish-config.md index c6777f2..3650e4c 100644 --- a/docs/fish-config.md +++ b/docs/fish-config.md @@ -1088,11 +1088,25 @@ Add -i (interactive confirmation) to destructive commands: ## 5.12 AI and Developer Tools +### agy + + Synopsis: agy [args...] + Wrapper for the agy Antigravity AI CLI. Before launching, delegates to + agents-init --agents to ensure AGENTS/ is scaffolded and CLAUDE.md is + symlinked to AGENTS/AGENTS.md in the current project, then forwards all + arguments verbatim to the real agy binary. Command shadow (C1): when + __fish_config_op_aliases (or the master) is disabled, the call is + passed through to the real agy binary unchanged. + + agy chat + agy resume + ### antigravity Synopsis: antigravity [args...] - Runs the agy CLI (Antigravity AI assistant) with noisy deprecation - warnings filtered from stderr. + Alias for agy with noisy deprecation warnings filtered from stderr. + Delegates to the agy fish function, so agents-init --agents runs on + every invocation. antigravity chat @@ -1121,7 +1135,7 @@ Add -i (interactive confirmation) to destructive commands: sub-repo. Fully idempotent: a second run produces no output and no new commits. Flags: --agents re-runs only the AGENTS.md / symlink step; --plugins re-runs only the plugin-directory wiring step. Called - automatically by the claude wrapper on every invocation. + automatically by the claude and agy wrappers on every invocation. agents-init agents-init --agents diff --git a/functions/agy.fish b/functions/agy.fish new file mode 100644 index 0000000..d078b0e --- /dev/null +++ b/functions/agy.fish @@ -0,0 +1,36 @@ +# Copyright (C) 2026 Rootiest +# SPDX-License-Identifier: AGPL-3.0-or-later + +# SYNOPSIS +# agy [ARGS...] +# +# DESCRIPTION +# Wrapper for the agy Antigravity AI CLI that ensures the AGENTS/ +# sub-repository is initialized and any agent-made changes are committed +# before launch. Delegates all scaffold and commit logic to agents-init +# --agents. All arguments are forwarded verbatim to the real agy binary. +# +# Opinionated component (C1): when disabled via __fish_config_op_aliases +# (or the __fish_config_opinionated master), the command is passed through +# to the real agy binary unchanged. +# +# ARGUMENTS +# ARGS Any arguments forwarded verbatim to the underlying agy binary +# +# RETURNS +# Exit status of the underlying agy binary +# +# EXAMPLE +# agy +# agy chat +# agy resume +function agy --wraps=agy --description 'agy wrapper: auto-initializes AGENTS/ sub-repo before launch' + if not __fish_config_op_enabled __fish_config_op_aliases + command agy $argv + return $status + end + + agents-init --agents + + command agy $argv +end diff --git a/functions/antigravity.fish b/functions/antigravity.fish index 251ab88..42ca85b 100644 --- a/functions/antigravity.fish +++ b/functions/antigravity.fish @@ -15,5 +15,5 @@ # antigravity chat function antigravity --wraps='agy' --description 'alias antigravity=agy' # In fish, we pipe stderr using '2>|' to another command - command agy $argv 2>| grep -v "'app' is not in the list of known options" >&2 + agy $argv 2>| grep -v "'app' is not in the list of known options" >&2 end