Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/agent-change.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,4 +24,4 @@ title: "[Agent] "

<!-- Compatibility, performance, security, and how to revert the change if needed. -->

<!-- A maintainer applies agent-candidate when the issue is ready. The agent opens a PR; merging is manual. -->
<!-- A maintainer applies agent-candidate when the issue is ready. The agent uses GLM-5.3 by default; apply agent-kimi first for harder or image-based work. The agent opens a PR; merging is manual. -->
10 changes: 9 additions & 1 deletion .github/workflows/agent-issue-trigger.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,16 @@ jobs:
issue_json="$(gh api "repos/opensensor/django-forms-workflows/issues/${ISSUE_NUMBER}")"
issue_title="$(jq -r .title <<< "$issue_json")"
issue_body="$(jq -r '.body // "" | .[0:16000]' <<< "$issue_json")"
model="glm-5.3"
spec="automation/agent-harness/glm.yaml"
if jq -e '.labels | any(.name == "agent-kimi")' <<< "$issue_json" >/dev/null; then
model="kimi-k3"
spec="automation/agent-harness/kimi.yaml"
fi
echo "Launching issue #${ISSUE_NUMBER} with ${model}"
echo "Issue #${ISSUE_NUMBER}: ${model}" >> "$GITHUB_STEP_SUMMARY"
session_json="$(doctl harness-runtime create \
--spec automation/agent-harness/kimi.yaml \
--spec "$spec" \
--name "$session_name" \
--interactive=false -o json)"
session_id="$(jq -r '.session_id // empty' <<< "$session_json")"
Expand Down
2 changes: 1 addition & 1 deletion automation/agent-harness/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Issue agent pilot

A maintainer can apply `agent-candidate` to a scoped public issue to start one DigitalOcean Harness Runtime session. The session uses Kimi K3 with automatic tool approval, edits a clone of this repository, and pushes `agent/issue-<issue>-<workflow run>` to the dedicated `matteius/django-forms-workflows` fork. GitHub Actions is disabled on that fork. A signed push webhook asks the shared PR broker to open a regular pull request against `opensensor/django-forms-workflows` main. The repository's existing PR CI then runs; a maintainer reviews and merges manually. The agent cannot push to the base repository.
A maintainer can apply `agent-candidate` to a scoped public issue to start one DigitalOcean Harness Runtime session. The session uses GLM-5.3 by default with automatic tool approval. Apply `agent-kimi` before `agent-candidate` for harder or image-based work to select Kimi K3. The model is selected once when the session starts. The agent edits a clone of this repository and pushes `agent/issue-<issue>-<workflow run>` to the dedicated `matteius/django-forms-workflows` fork. GitHub Actions is disabled on that fork. A signed push webhook asks the shared PR broker to open a regular pull request against `opensensor/django-forms-workflows` main. The repository's existing PR CI then runs; a maintainer reviews and merges manually. The agent cannot push to the base repository.

The launcher exits after submitting the prompt; it does not keep a runner occupied while the agent works. Applying the label again launches another session. Remove the label to prevent a delayed fork push from opening a PR. Use the `Agent-ready change` issue template to give the agent clear acceptance criteria and validation steps.

Expand Down
13 changes: 13 additions & 0 deletions automation/agent-harness/glm.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
name: django-forms-public-issue-glm
agent: opencode
size: mars-2vcpu-4gb
idle_timeout: 30m
repos:
- opensensor/django-forms-workflows
env:
HARNESS_INFERENCE_MODEL: glm-5.3
secrets:
HARNESS_INFERENCE_API_KEY: ${HARNESS_INFERENCE_API_KEY}
GIT_DEPLOY_KEY_B64: ${GIT_DEPLOY_KEY_B64}
permissions:
default: allow
Loading