This repository was archived by the owner on Jun 3, 2026. It is now read-only.
cleanup comments #48
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Project Manager Agent | |
| on: | |
| push: | |
| workflow_dispatch: | |
| inputs: | |
| project_overview_file: | |
| description: 'Path to the project overview markdown file' | |
| required: false | |
| type: string | |
| default: '.project/project-overview.md' | |
| task_registry_file: | |
| description: 'Path and filename of the task registry file' | |
| required: false | |
| type: string | |
| default: '.project/task-registry.md' | |
| tasks_dir: | |
| description: 'Directory containing tasks' | |
| required: false | |
| type: string | |
| default: '.project/tasks/' | |
| project_title: | |
| description: 'Title of the project for the tracking issue' | |
| required: false | |
| type: string | |
| prompt: | |
| description: 'A prompt to give the agent. Overrides the default behavior of reading the repository files' | |
| required: false | |
| type: string | |
| jobs: | |
| project-manager: | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: write | |
| issues: write | |
| pull-requests: write | |
| id-token: write # Required for OIDC | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Prepare Project Manager Script | |
| id: project-manager-agent-script | |
| uses: actions/github-script@v7 | |
| with: | |
| script: | | |
| const fs = require('fs'); | |
| const systemPrompt = fs.readFileSync('.github/agent-scripts/project-manager.script.md', 'utf8'); | |
| const projectOverview = fs.readFileSync('${{ inputs.project_overview_file || '.project/project-overview.md' }}', 'utf8'); | |
| const taskRegistry = fs.readFileSync('${{ inputs.task_registry_file || '.project/task-registry.md' }}', 'utf8'); | |
| const { execSync } = require('child_process'); | |
| const tasksDir = '${{ inputs.tasks_dir || '.project/tasks' }}'; | |
| const tasksList = execSync(`find ${tasksDir}`, { encoding: 'utf8' }).trim(); | |
| const task = `project_overview: | |
| \`\`\`markdown | |
| ${projectOverview} | |
| \`\`\` | |
| tasks: | |
| \`\`\` | |
| ${tasksList} | |
| \`\`\` | |
| task_registory: | |
| \`\`\` | |
| ${taskRegistry} | |
| \`\`\` | |
| `; | |
| core.setOutput('system_prompt', systemPrompt); | |
| core.setOutput('task', task); | |
| - uses: strands-agents/strands-action@main | |
| with: | |
| aws_role_arn: ${{ secrets.AWS_ROLE_ARN }} | |
| system_prompt: ${{ steps.project-manager-agent-script.outputs.system_prompt }} | |
| thinking_type: "enabled" | |
| budget_tokens: "8000" | |
| model: "global.anthropic.claude-sonnet-4-5-20250929-v1:0" | |
| anthropic_beta: "interleaved-thinking-2025-05-14" | |
| max_tokens: "64000" | |
| tools: "editor,file_read,shell,http_request,add_comment,list_issues,list_pull_requests,create_issue,get_issue,get_pull_request,get_pr_review_and_comments,update_issue,get_issue_comments,notebook" | |
| task: ${{ inputs.prompt || steps.project-manager-agent-script.outputs.task }} |