Skip to content

Conversation

@dsyme
Copy link
Contributor

@dsyme dsyme commented Aug 14, 2025

No description provided.

@dsyme dsyme merged commit dd9e95b into main Aug 14, 2025
6 checks passed
@dsyme dsyme deleted the s2 branch August 14, 2025 18:12
pelikhan added a commit that referenced this pull request Sep 4, 2025
…UB_AW_MAX_TURNS environment variable, and shared MCP configuration (#59) (#313)

* Initial plan

* Implement custom agentic engine with GitHub Actions steps support

- Add custom engine (ID: "custom") to engine registry
- Update JSON schema to allow "custom" as valid engine ID and support "steps" field
- Create CustomEngine implementation with GetInstallationSteps, GetExecutionConfig, etc.
- Update compiler to handle custom engine steps generation
- Skip MCP setup and AI prompt generation for custom engines
- Add comprehensive tests for custom engine functionality
- Update documentation with custom engine usage examples



* Improve YAML formatting for multi-line run commands in custom engine steps

- Fix convertStepToYAML to use literal block scalar (|) for multi-line run commands
- Add proper indentation for multi-line commands in custom engine steps
- Ensure generated YAML is valid and properly formatted
- All tests pass and CodeQL validation successful



* Add comprehensive test workflow for safe outputs with custom engine



* Change permissions to read-all in test-safe-outputs-custom-engine workflow



* Fix test-safe-outputs workflow: move safe-outputs above engine, convert to JSONL format, and write to $GITHUB_AW_SAFE_OUTPUTS



* Remove custom engine documentation and extend ExecutionConfig with Steps field



* Enable GITHUB_AW_MAX_TURNS environment variable and MCP config sharing for custom engine

- Set supportsMaxTurns to true for custom engine to match Claude functionality
- Add GITHUB_AW_MAX_TURNS environment variable generation for max-turns configuration
- Enable MCP configuration sharing between custom and Claude engines by removing custom engine exclusion
- Implement custom engine MCP config rendering using shared renderSharedMCPConfig logic
- Update custom engine to inject environment variables (GITHUB_AW_MAX_TURNS, GITHUB_AW_SAFE_OUTPUTS, and custom env vars) into run steps
- Update tests to reflect new custom engine capabilities
- Add comprehensive test for custom engine with max-turns functionality



* Fix YAML generation for custom engine environment variables

- Fix environment variable injection in custom engine steps to generate proper YAML structure
- Environment variables now appear at same indentation level as 'run:' instead of inline within run block
- Fix quote escaping issue in test workflow discussion content
- All tests pass and workflows compile successfully
- Addresses feedback from PR comment requesting test, format, and lint fixes



---------

Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
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.

2 participants