Skip to content

feat: Implement SASC Orchestrator CLI for Agent Management#5

Merged
spiralgang merged 3 commits into
mainfrom
feat/sasc-orchestrator-cli
Oct 13, 2025
Merged

feat: Implement SASC Orchestrator CLI for Agent Management#5
spiralgang merged 3 commits into
mainfrom
feat/sasc-orchestrator-cli

Conversation

@google-labs-jules
Copy link
Copy Markdown
Contributor

This change introduces the SASC Orchestrator, a high-level command-line interface for managing the SASC agent workforce. This fulfills the requirements of Workorder 2a.

The orchestrator provides an interactive chat console that acts as the management and creative layer for the SASC ecosystem. It can parse user commands, execute the sascctl tool to manage agents, interact with live AI models on Vertex AI, and maintains its own "thought log" for transparency.


PR created automatically by Jules for task 9011214904568932602

This commit introduces the SASC Orchestrator, a high-level command-line interface for managing the SASC agent workforce. This fulfills the requirements of Workorder 2a, building upon the foundation established in Workorder 1a without modifying the underlying agent system.

The SASC Orchestrator (`sasc_orchestrator/main.py`) provides an interactive chat console that acts as the management and creative layer for the entire SASC ecosystem.

Key Features:
- **Interactive Chat Interface:** A simple, extensible CLI for issuing commands to the AI management layer.
- **Command Parsing:** Distinguishes between natural language input and explicit, executable commands prefixed with `!`.
- **Integration with `sascctl`:** Uses the `sascctl` tool as a subprocess to control the lifecycle of the workforce agents, ensuring a clean separation of concerns between the management and workforce layers.
- **Orchestrator "Thought Cloning":** Maintains its own dedicated log (`orchestrator_thought_log.txt`) to record high-level decisions and actions, providing transparency into the reasoning of the management layer itself.

This component serves as the primary user-facing entry point for interacting with and directing the autonomous SASC agent system.
This commit introduces the SASC Orchestrator, a high-level command-line interface for managing the SASC agent workforce. This fulfills the requirements of Workorder 2a, building upon the foundation established in Workorder 1a without modifying the underlying agent system.

The SASC Orchestrator (`sasc_orchestrator/main.py`) provides an interactive chat console that acts as the management and creative layer for the entire SASC ecosystem.

Key Features:
- **Interactive Chat Interface:** A simple, extensible CLI for issuing commands to the AI management layer.
- **Command Parsing:** Distinguishes between natural language input and explicit, executable commands prefixed with `!`.
- **Integration with `sascctl`:** Uses the `sascctl` tool as a subprocess to control the lifecycle of the workforce agents, ensuring a clean separation of concerns between the management and workforce layers.
- **Orchestrator "Thought Cloning":** Maintains its own dedicated log (`orchestrator_thought_log.txt`) to record high-level decisions and actions, providing transparency into the reasoning of the management layer itself.
- **Live AI Integration:** Includes integration with Google's Vertex AI for interacting with the Gemma model.
- **Mocked Local Model Interface:** Provides a mock interface for a local Qwen-Coder model, preparing the architecture for future MLC LLM integration.

This component serves as the primary user-facing entry point for interacting with and directing the autonomous SASC agent system.
This commit enhances the SASC system to be architecturally-aware, simulating a high-fidelity host/guest environment as per the revised requirements of Workorder 3a. This prepares the system for a future transition to a real Cuttlefish virtual environment.

Key Enhancements:
- **Architecturally-Aware SCM:** The `polyglot_state.yaml` manifest has been updated to include distinct configurations for the `AARCH64_HOST_CONFIG` and the `X86_64_CUTTLEFISH_GUEST_CONFIG`. This provides a complete blueprint of the target architecture.
- **Host-Aware Orchestrator:** The `sasc_orchestrator` now loads the `AARCH64_HOST_CONFIG` and logs its "thoughts" with the context of operating on an AArch64 host.
- **Guest-Aware Simulated Agent:** The `native_agent_simulator` is now "guest-aware," loading the `X86_64_CUTTLEFISH_GUEST_CONFIG` and logging its "thoughts" as if it were running inside a Cuttlefish x86_64 VM.
- **Updated `launch-agent` Command:** The `sascctl launch-agent` command has been updated to correctly parse the new SCM structure and pass the guest configuration to the simulated agent.
- **Revised Demonstration Scenario:** A new `run_demo_revised.sh` script provides an end-to-end test of the architecturally-aware system, verifying the "thought logs" of both the host and guest components.

This implementation successfully pivots from a simple simulation to a high-fidelity, architecturally-aware model of the target environment, all while working within the constraints of the current non-virtualized execution environment.
@google-labs-jules
Copy link
Copy Markdown
Contributor Author

👋 Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!


For security, I will only act on instructions from the user who triggered this task.

@spiralgang spiralgang marked this pull request as ready for review October 13, 2025 22:37
@spiralgang spiralgang enabled auto-merge October 13, 2025 22:37
@spiralgang spiralgang disabled auto-merge October 13, 2025 22:37
@spiralgang spiralgang enabled auto-merge (squash) October 13, 2025 22:37
@spiralgang spiralgang disabled auto-merge October 13, 2025 22:38
@spiralgang spiralgang enabled auto-merge (squash) October 13, 2025 22:38
@spiralgang spiralgang disabled auto-merge October 13, 2025 22:38
@spiralgang spiralgang merged commit bd5d49b into main Oct 13, 2025
3 checks passed
@spiralgang spiralgang deleted the feat/sasc-orchestrator-cli branch October 13, 2025 22:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant