Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
97 commits
Select commit Hold shift + click to select a range
cf868b9
feat: add new agentic workflows and scripts
jescalada Apr 15, 2026
ccf9482
Merge branch 'G-Research-Forks:main' into main
jescalada Apr 15, 2026
a4d1482
feat: add agentic issue tagging, PR description quality and security …
jescalada Apr 15, 2026
cdd01cf
chore: update PR workflows to run on pull_request_target
jescalada Apr 15, 2026
ea6509a
refactor: optimize system prompts and standardize outputs
jescalada Apr 17, 2026
54c73c5
refactor: extract configurable params to workflow file
jescalada Apr 17, 2026
c652d04
refactor: extract helper functions, move scripts to scripts/agents
jescalada Apr 17, 2026
b7da401
fix: python imports and remove unused
jescalada Apr 17, 2026
b544668
chore: add greeting and disclaimer to output
jescalada Apr 17, 2026
bced0e4
Merge branch 'main' into ai-automated-issue-and-pr-assessment
jescalada Apr 17, 2026
656c2d8
Merge branch 'G-Research-Forks:main' into main
jescalada May 1, 2026
1d4e706
ci: handle NPM releases for multiple branches
jescalada May 3, 2026
94f5f5d
ci: fix original release-drafter
jescalada May 3, 2026
f4c80c5
ci: add release-branch-drafter.yml
jescalada May 3, 2026
cd4f2bc
Merge branch 'G-Research-Forks:main' into main
jescalada May 3, 2026
1120e1d
ci: modify workflows for testing, edit package.json for publish
jescalada May 3, 2026
600dc91
fix: update package.json versions
jescalada May 3, 2026
59d0af5
Merge pull request #4 from jescalada/1517-gitlabflow-workflow-fixes
jescalada May 3, 2026
ba674ee
feat: test GitProxy v1.1.0 auto-draft and NPM publish
jescalada May 3, 2026
423826b
chore: bump @jescalada/git-proxy-development-testing to 1.1.0
jescalada May 3, 2026
129b618
chore: bump @jescalada/git-proxy-deployment-testing to 1.1.0
jescalada May 3, 2026
e735fd4
Merge pull request #5 from jescalada/jescalada-patch-1
jescalada May 3, 2026
34efe8c
chore: add YAML front matter to release drafter config
jescalada May 3, 2026
861270d
ci: set pr-lint.yml to only set labels
jescalada May 3, 2026
7986cfa
ci: move release branch drafter
jescalada May 3, 2026
fb649c0
Merge branch 'main' into 1517-gitlabflow-workflow-fixes
jescalada May 3, 2026
0ca3327
Merge pull request #7 from jescalada/1517-gitlabflow-workflow-fixes
jescalada May 3, 2026
90799b3
ci: add auto-label action and remove from pr-lint
jescalada May 3, 2026
0aeec6a
Merge branch '1517-gitlabflow-workflow-fixes' of https://github.com/j…
jescalada May 3, 2026
4434928
chore: pin autolabeler action
jescalada May 3, 2026
402319a
chore: remove unsafe pull_request trigger
jescalada May 3, 2026
b19446a
Merge pull request #8 from jescalada/1517-gitlabflow-workflow-fixes
jescalada May 4, 2026
669bd1e
ci: rename release drafter config
jescalada May 4, 2026
8eddf8c
ci: fix release-drafter to run on pushes to release branches only
jescalada May 4, 2026
4fdb337
feat: simulate v1.2.0 feature
jescalada May 4, 2026
47d8770
Merge pull request #9 from jescalada/1517-gitlabflow-workflow-fixes
jescalada May 4, 2026
367a41e
ci: fix missing config-name in auto-label.yml
jescalada May 4, 2026
391c202
Fix formatting in README.md for version notes
jescalada May 4, 2026
8ac4d7c
Merge pull request #12 from jescalada/jescalada-patch-4
jescalada May 4, 2026
3ed7c91
fix: add filter-by-commitish option to release drafter config
jescalada May 4, 2026
4dee3c8
feat: bump to 1.3, simulate feature being added
jescalada May 4, 2026
648401a
Merge pull request #18 from jescalada/bump-to-1.3
jescalada May 4, 2026
49bc022
fix: remove filter-by-commitish option release drafter config
jescalada May 4, 2026
4586c34
feat: retest feature on 1.2.0
jescalada May 4, 2026
cef54f7
Merge pull request #19 from jescalada/jescalada-patch-6
jescalada May 4, 2026
ad4647f
Merge branch 'main' into ai-automated-issue-and-pr-assessment
jescalada Jun 4, 2026
58daeca
ci: add version-bump.yml
jescalada Jul 1, 2026
c40a1ed
Merge branch 'main' into 1533-autobump-packagejson
jescalada Jul 1, 2026
cc24c0e
chore: fix package-lock.json
jescalada Jul 1, 2026
9ac57d5
Merge pull request #24 from jescalada/1533-autobump-packagejson
jescalada Jul 1, 2026
8d58470
fix: cli package-lock.json not needed
jescalada Jul 1, 2026
a1408ea
Merge pull request #25 from jescalada/1533-autobump-packagejson
jescalada Jul 1, 2026
7983b9e
Merge branch 'main' into ai-automated-issue-and-pr-assessment
kriswest Jul 9, 2026
0ded4d7
Merge branch 'main' into ai-automated-issue-and-pr-assessment
jescalada Jul 13, 2026
555ced9
Merge branch 'main' into ai-automated-issue-and-pr-assessment
jescalada Jul 20, 2026
da64800
Merge branch 'main' into ai-automated-issue-and-pr-assessment
jescalada Jul 28, 2026
b24fa39
ci: add debug mode for ai triage workflows
jescalada Aug 10, 2026
0499e58
Merge branch 'main' into ai-automated-issue-and-pr-assessment
jescalada Aug 10, 2026
cff0e80
Merge pull request #27 from jescalada/ai-automated-issue-and-pr-asses…
jescalada Aug 10, 2026
e912907
fix: debug mode env name
jescalada Aug 10, 2026
a447976
Merge pull request #28 from jescalada/ai-automated-issue-and-pr-asses…
jescalada Aug 10, 2026
e173171
chore: remove unused scripts
jescalada Aug 10, 2026
de2c1ac
feat: add token limits to agentic loop, reduce token usage and improv…
jescalada Aug 10, 2026
130c259
feat: add token limits to PR and issue processors
jescalada Aug 10, 2026
740ef21
fix: max_outputs not defined
jescalada Aug 10, 2026
f85f80b
fix: remove temperature=0 setting to enable thinking model scans
jescalada Aug 10, 2026
8567a50
chore: temporarily increase max output tokens for testing
jescalada Aug 10, 2026
8a136ff
Merge pull request #31 from jescalada/ai-automated-issue-and-pr-asses…
jescalada Aug 10, 2026
8b8d90e
chore: add model information to debug output
jescalada Aug 10, 2026
219483f
chore: convert model and debug flag into variables for proper debugging
jescalada Aug 10, 2026
3199edd
chore: improve debug output
jescalada Aug 10, 2026
7f57ceb
Merge branch 'main' into ai-automated-issue-and-pr-assessment
jescalada Aug 10, 2026
8b66d82
Merge pull request #32 from jescalada/ai-automated-issue-and-pr-asses…
jescalada Aug 10, 2026
be6fa52
chore: add token limit env inputs
jescalada Aug 10, 2026
d567b12
chore: edit SYSTEM_PROMPT for dynamic model reference
jescalada Aug 10, 2026
932ebb1
Merge branch 'main' into ai-automated-issue-and-pr-assessment
jescalada Aug 10, 2026
60ac294
Merge pull request #33 from jescalada/ai-automated-issue-and-pr-asses…
jescalada Aug 10, 2026
fd94b56
feat: refactor diff extraction logic
jescalada Aug 11, 2026
4091d1e
chore: simplify security-review.yml config
jescalada Aug 11, 2026
dde64c7
fix: update rename
jescalada Aug 11, 2026
2bf5fdd
chore: tweak prompt
jescalada Aug 11, 2026
0ef4432
Merge pull request #34 from jescalada/ai-automated-issue-and-pr-asses…
jescalada Aug 11, 2026
e2359cd
chore: add PR splitting suggestion on truncated diff
jescalada Aug 11, 2026
1439861
chore: simplify config options
jescalada Aug 11, 2026
cbfda0f
fix: harden agentic flow security
jescalada Aug 11, 2026
09312f6
ci: move injectable content outside of template in prompt
jescalada Aug 12, 2026
ca098b2
ci: add prompt injection guard helpers
jescalada Aug 12, 2026
7af7b38
ci: harden pr_checker_agent.py and security_review_agent.py
jescalada Aug 12, 2026
56e2ad9
ci: harden triage_agent against prompt injection
jescalada Aug 12, 2026
ad2707b
Merge branch 'main' into ai-automated-issue-and-pr-assessment
jescalada Aug 12, 2026
fd5e059
Merge branch 'main' into ai-automated-issue-and-pr-assessment
jescalada Aug 14, 2026
45e8861
Merge branch 'main' into ai-automated-issue-and-pr-assessment
jescalada Aug 14, 2026
9eb7e4b
chore: revert unwanted changes from own fork
jescalada Aug 14, 2026
2b9970f
chore: revert unwanted dep resolution
jescalada Aug 14, 2026
b9b015b
chore: run npm i
jescalada Aug 14, 2026
716b5b1
Merge branch 'main' into ai-automated-issue-and-pr-assessment
jescalada Aug 17, 2026
ca37a19
Merge branch 'main' into ai-automated-issue-and-pr-assessment
jescalada Aug 18, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 1 addition & 5 deletions .github/workflows/pr-lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,7 @@ name: 'PR'

on:
pull_request_target:
types:
- opened
- reopened
- edited
- synchronize
types: [opened, reopened, edited, synchronize]

permissions:
contents: read
Expand Down
45 changes: 45 additions & 0 deletions .github/workflows/pr-quality-check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
name: PR Quality Check
on:
pull_request:
types: [opened, reopened]

concurrency:
group: pr-quality-check-${{ github.event.pull_request.number }}
cancel-in-progress: true

jobs:
pr_quality_check:
runs-on: ubuntu-latest
timeout-minutes: 10
# GitHub withholds secrets from fork pull_request runs, so the agent can only
# authenticate for same-repo PRs opened by collaborators and members.
if: >
github.event.pull_request.user.type != 'Bot' &&
contains(fromJSON('["OWNER","MEMBER","COLLABORATOR"]'), github.event.pull_request.author_association)
permissions:
pull-requests: write
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.12'
- run: pip install litellm PyGithub
- name: Run PR quality check agent
env:
MODEL: ${{ vars.MODEL }} # e.g: "claude-sonnet-5", "gpt-4o", etc.
DEBUG_AI_WORKFLOWS: ${{ vars.DEBUG_AI_WORKFLOWS }} # Enable token/cost logging

# Only API key for the chosen model is required
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
GEMINI_API_KEY: ${{ secrets.GEMINI_API_KEY }}
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}

# Obtained automatically by GH Actions
AUTHOR_ASSOCIATION: ${{ github.event.pull_request.author_association }}
AUTHOR_USERNAME: ${{ github.event.pull_request.user.login }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
PR_BODY: ${{ github.event.pull_request.body }}
PR_NUMBER: ${{ github.event.pull_request.number }}
PR_TITLE: ${{ github.event.pull_request.title }}
REPO_NAME: ${{ github.repository }}
run: python scripts/agents/pr_checker_agent.py
55 changes: 55 additions & 0 deletions .github/workflows/security-review.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
name: Security Review

on:
pull_request:
types: [opened, reopened]
issue_comment:
types: [created]

concurrency:
group: security-review-${{ github.event.pull_request.number || github.event.issue.number }}
cancel-in-progress: true

jobs:
security-review:
runs-on: ubuntu-latest
timeout-minutes: 15
# Runs on PR creation by a collaborator/member
# or when collaborator/member comments "/security-review"
if: >
(
github.event_name == 'pull_request' &&
github.event.pull_request.user.type != 'Bot' &&
contains(fromJSON('["OWNER","MEMBER","COLLABORATOR"]'), github.event.pull_request.author_association)
) || (
github.event_name == 'issue_comment' &&
github.event.issue.pull_request != null &&
startsWith(github.event.comment.body, '/security-review') &&
contains(fromJSON('["OWNER","MEMBER","COLLABORATOR"]'), github.event.comment.author_association)
)
permissions:
issues: write
pull-requests: write
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.12'
- run: pip install litellm PyGithub
- name: Run security review agent
env:
IGNORED_PATTERNS: package-lock.json,yarn.lock,dist/*,build/*
MODEL: ${{ vars.MODEL }} # e.g: "claude-sonnet-5", "gpt-4o", etc.
DEBUG_AI_WORKFLOWS: ${{ vars.DEBUG_AI_WORKFLOWS }} # Enable token/cost logging

# Only API key for the chosen model is required
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
GEMINI_API_KEY: ${{ secrets.GEMINI_API_KEY }}
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}

# Obtained automatically by GH Actions
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
PR_NUMBER: ${{ github.event.pull_request.number || github.event.issue.number }}
REPO_NAME: ${{ github.repository }}
TRIGGER: ${{ github.event_name }}
run: python scripts/agents/security_review_agent.py
41 changes: 41 additions & 0 deletions .github/workflows/triage.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: Issue Triage
on:
issues:
types: [opened, reopened]

concurrency:
group: issue-triage-${{ github.event.issue.number }}
cancel-in-progress: true

jobs:
triage:
runs-on: ubuntu-latest
timeout-minutes: 10
if: github.event.issue.user.type != 'Bot'
permissions:
issues: write
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.12'
- run: pip install litellm PyGithub
- name: Run triage agent
env:
AVAILABLE_LABELS: automation,bug,dependencies,documentation,enhancement,good-first-issue,meeting,needs-info,plugins,protocol,question,security,tech-debt,testing
LATEST_ISSUES_LIMIT: 100 # Number of issues to check for duplicates
MODEL: ${{ vars.MODEL }} # e.g: "claude-sonnet-4-6", "gpt-4o", etc.
DEBUG_AI_WORKFLOWS: ${{ vars.DEBUG_AI_WORKFLOWS }} # Enable token/cost logging

# Only API key for the chosen model is required
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
GEMINI_API_KEY: ${{ secrets.GEMINI_API_KEY }}
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}

# Obtained automatically by GH Actions
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
ISSUE_BODY: ${{ github.event.issue.body }}
ISSUE_NUMBER: ${{ github.event.issue.number }}
ISSUE_TITLE: ${{ github.event.issue.title }}
REPO_NAME: ${{ github.repository }}
run: python scripts/agents/triage_agent.py
34 changes: 28 additions & 6 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading