Replaced the stale session-1 provision_discourse/provision_redmine with the flows proven on vp-techops this session. Both are now parameterized by the agent manifest (username derived from name, hyphens stripped, overridable via username: field). Discourse: login modal -> OpenID button -> signup on first login -> RSA User API key flow (PKCS1v15 decrypt, JSON payload). Redmine: KNEL Cloud SSO button -> consent -> Show/Reset on the API access key section via targeted DOM traversal. Added docs/JOURNAL.md with all working selectors, flows, gotchas, and verification results so future sessions do not rediscover them.
91 lines
2.8 KiB
Plaintext
91 lines
2.8 KiB
Plaintext
# agents.yaml — Agent identity manifest
|
|
#
|
|
# One entry per AI agent identity. The provisioner reads this file,
|
|
# enrolls each agent in Cloudron, generates API keys, and stores
|
|
# everything in Bitwarden.
|
|
#
|
|
# Generate Cloudron invite links at:
|
|
# https://tsys-cloudron.knel.net -> Users -> Add User -> copy invite URL
|
|
|
|
agents:
|
|
- name: vp-techops
|
|
display_name: "VP TechOps"
|
|
cloudron_email: "vp-techops@turnsys.com"
|
|
# username defaults to name with hyphens stripped (vp-techops -> vptechops)
|
|
username: "vptechops"
|
|
priority: Q3
|
|
cloudron_invite: "https://tsys-cloudron.knel.net/invitation/REPLACE_WITH_TOKEN"
|
|
systems:
|
|
gitea:
|
|
url: https://git.knownelement.com
|
|
token_name: vp-techops-api
|
|
scopes: ["api", "repo", "read:org"]
|
|
orgs: ["KNEL", "TechnicalOperations"]
|
|
discourse:
|
|
url: https://community.turnsys.com
|
|
categories: [74, 20]
|
|
redmine:
|
|
url: https://projects.knownelement.com
|
|
projects: [55, 59]
|
|
role: Developer
|
|
|
|
- name: vp-secops
|
|
display_name: "VP SecOps"
|
|
cloudron_email: "vp-secops@turnsys.com"
|
|
priority: Q3
|
|
cloudron_invite: "https://tsys-cloudron.knel.net/invitation/REPLACE_WITH_TOKEN"
|
|
systems:
|
|
gitea:
|
|
url: https://git.knownelement.com
|
|
token_name: vp-secops-api
|
|
scopes: ["api", "repo", "read:org"]
|
|
orgs: ["KNEL"]
|
|
discourse:
|
|
url: https://community.turnsys.com
|
|
categories: [74]
|
|
redmine:
|
|
url: https://projects.knownelement.com
|
|
projects: [55]
|
|
role: Developer
|
|
|
|
- name: vp-techcompliance
|
|
display_name: "VP TechCompliance"
|
|
cloudron_email: "vp-techcompliance@turnsys.com"
|
|
priority: Q3
|
|
cloudron_invite: "https://tsys-cloudron.knel.net/invitation/REPLACE_WITH_TOKEN"
|
|
systems:
|
|
gitea:
|
|
url: https://git.knownelement.com
|
|
token_name: vp-techcompliance-api
|
|
scopes: ["api", "repo", "read:org"]
|
|
orgs: ["KNEL"]
|
|
discourse:
|
|
url: https://community.turnsys.com
|
|
categories: [75]
|
|
redmine:
|
|
url: https://projects.knownelement.com
|
|
projects: [55]
|
|
role: Developer
|
|
|
|
# Q4 agents — enroll in Cloudron only (Phase 1), no system access yet
|
|
- name: coo
|
|
display_name: "Chief Operating Officer"
|
|
cloudron_email: "coo@turnsys.com"
|
|
priority: Q4
|
|
cloudron_invite: "https://tsys-cloudron.knel.net/invitation/REPLACE_WITH_TOKEN"
|
|
systems: {}
|
|
|
|
- name: svp-knel
|
|
display_name: "SVP KNEL"
|
|
cloudron_email: "svp-knel@turnsys.com"
|
|
priority: Q4
|
|
cloudron_invite: "https://tsys-cloudron.knel.net/invitation/REPLACE_WITH_TOKEN"
|
|
systems: {}
|
|
|
|
- name: svp-tctc
|
|
display_name: "SVP TCTC"
|
|
cloudron_email: "svp-tctc@turnsys.com"
|
|
priority: Q4
|
|
cloudron_invite: "https://tsys-cloudron.knel.net/invitation/REPLACE_WITH_TOKEN"
|
|
systems: {}
|