Files
cds-ai/AGENTS.md

68 lines
3.9 KiB
Markdown

# AI Agent Instructions
This document provides workspace-level instructions for AI agents working anywhere under `/home/aw/code/cds`.
## Git and Commit Rules
### General Workspace Rules
- Always let the user review the proposed commit scope and commit message first, and wait for explicit approval before creating any local git commit in this workspace.
- Never commit or push to the nested `galaxy-complete` repo under `/home/aw/code/cds/galaxy-complete` without the user's explicit approval.
- Never assume work in `/home/aw/code/cds` should be pushed to `rnd.cdsi.us.com`.
## ATVM Prep Script Guardrail
- Do not run `/root/atvm_prep/atvm_prep.py` unless the operator explicitly asks for an `atvm_prep` task.
- For any `atvm_prep` execution request, always show the planned command first and wait for explicit operator approval before running it.
## Exact VM Name Guardrail
- For VM power or maintenance requests, act only on the exact VM names provided by the operator.
- If any requested VM name is not found, stop and report it; do not infer, substitute, or search for replacement VMs unless the operator explicitly asks for that discovery step.
## Red Hat Manual Task Subscription Guardrail
- For manually requested tasks on Red Hat machines (non-ATVM-automation tasks), run the Red Hat subscription reset/register sequence before the requested task.
- Do not apply this guardrail to ATVM automation runs where existing automation scripts already handle subscription flow.
- Use Red Hat subscription credentials from `/home/aw/code/cds/.env.credentials.local`:
- `REDHAT_SUBSCRIPTION_USER`
- `REDHAT_SUBSCRIPTION_PASSWORD`
- Required pre-task command sequence for manual Red Hat tasks:
- `subscription-manager remove --all`
- `subscription-manager unregister`
- `subscription-manager clean`
- `subscription-manager register --username "$REDHAT_SUBSCRIPTION_USER" --password "$REDHAT_SUBSCRIPTION_PASSWORD"`
## ATVM Prep Mapping Defaults
- For `atvm_prep` requests in this workspace, infer common options from operator shorthand when intent is clear.
- Datastore shorthand mapping for `-n`:
- `Gold` -> `AutomatedTest-VMBootImg-Gold`
- `Gold2` -> `AutomatedTest-VMBootImg-Gold-2`
- `ComputeMigration` (or `compute migration`) -> `AutomatedTest-VMBootImgComputeMigration-Gold`
- Client/ESXi pairing defaults:
- `CDS1-ESX165` <-> `192.168.1.165`
- `CDS1-ESX166` <-> `192.168.1.166`
- If only one of `-c` or `-e` is provided, auto-fill the paired value from this mapping.
- If both `-c` and `-e` are provided but conflict with mapping, stop and ask for confirmation before execution.
### ATVM Cypress Git Drafting
When the user explicitly asks to "create a git" or otherwise requests git/commit help for the ATVM Cypress machine/vm:
1. Never automatically run git commands. Always draft the commands only.
2. Assume the user is referring to the Cypress ATVM checkout at `/root/cdc-e2e-cyp-12.17.4`.
3. Write the drafted commands to `/tmp/commit.txt` so the user can copy and paste them without extra formatting.
4. When generating git commands that need SSH, use the user's one-off method exactly as:
`GIT_SSH_COMMAND='ssh -i ~/.ssh/id_ed25519_anthony -o IdentitiesOnly=yes'`
5. Prefer complete copy-pasteable command sequences that are ready to run from `/root/cdc-e2e-cyp-12.17.4`.
If the user does not specify the ATVM Cypress machine/vm, follow the general workspace rules above and any other git guidance already in this file.
## Machine-Based Default Paths
- Before looking for screenshots or files, check the machine identity first, for example with `hostname`.
- On `atvm-codex-aw`, use `/Home/Pictures` as the default folder when the user asks you to look at screenshots.
- On `atvm-codex-aw`, use `/Home/Documents` as the default folder when the user asks you to look at files.
- If the machine is different and no local convention is documented, do not guess a folder path; ask the user or inspect the local environment first.