Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1086 commits
Select commit Hold shift + click to select a range
f3da39a
feat(nx-npm-access): add npm-prepare target — port /npm-publish prepa…
ThePlenkov Apr 20, 2026
64dd1ba
refactor(nx-npm-trust): rename from nx-npm-access, collapse to one ta…
ThePlenkov Apr 20, 2026
b09314f
docs(nx-npm-trust): correct usage — flags forward without --args=
ThePlenkov Apr 20, 2026
af8b642
chore(bun.lock): update package versions to 0.3.1
ThePlenkov Apr 20, 2026
46c2d2a
refactor(nx-npm-trust): trim log output — one line per package by def…
ThePlenkov Apr 20, 2026
42e6fbf
refactor(nx-npm-trust): rename --json flag to --verbose
ThePlenkov Apr 20, 2026
2de8a26
chore(package.json): add publishConfig for public access
ThePlenkov Apr 20, 2026
6583453
fix(nx-npm-trust): don't fail when --fix successfully patched everything
ThePlenkov Apr 20, 2026
879bd75
fix(nx-npm-trust): don't treat auto-fixable issues as lingering errors
ThePlenkov Apr 20, 2026
04af57c
fix(nx-npm-trust): --prepare now speaks the right dialect of npm CLI
ThePlenkov Apr 20, 2026
da19e47
fix(nx-npm-trust): don't pass scope registry override to `npm trust`
ThePlenkov Apr 20, 2026
c2119e0
chore(release): publish 0.3.2 [skip ci]
github-actions[bot] Apr 20, 2026
312d0d5
fix(ci): force npm as nx release publish driver (bun has no OIDC)
ThePlenkov Apr 20, 2026
de45f32
fix(ci): set cli.packageManager=npm + bump npm for OIDC publishing
ThePlenkov Apr 20, 2026
a7d83c4
fix(ci): revert global nx.json cli.packageManager, keep job-local ove…
ThePlenkov Apr 20, 2026
45315ee
chore(release): publish 0.3.3 [skip ci]
github-actions[bot] Apr 20, 2026
66ef8d3
fix(ci): clear setup-node .npmrc to enable OIDC trusted publishing
ThePlenkov Apr 20, 2026
539a818
debug(ci): diagnose OIDC readiness before publish
ThePlenkov Apr 20, 2026
4302d04
fix(ci): nuke repo .npmrc entirely in publish job to unblock OIDC
ThePlenkov Apr 20, 2026
22ca3a7
fix(packages): add repository/homepage/bugs to every published package
ThePlenkov Apr 20, 2026
210309d
chore(release): publish 0.3.4 [skip ci]
github-actions[bot] Apr 20, 2026
9e4a0af
fix(ci): propagate id-token: write to publish job in release.yml
ThePlenkov Apr 20, 2026
92bc98b
debug(ci): decode OIDC token claims for trust match diagnosis
ThePlenkov Apr 20, 2026
81e2e6a
fix(ci): disable Nx Cloud for publish job (org exceeded free plan)
ThePlenkov Apr 20, 2026
07c17d1
fix(release): set preserveLocalDependencyProtocols=false so workspace…
ThePlenkov Apr 20, 2026
0a36ad7
fix(ci): set NX_NO_CLOUD=true in release version step too
ThePlenkov Apr 20, 2026
42e4a5a
chore(release): publish 0.3.5 [skip ci]
github-actions[bot] Apr 20, 2026
8a9fc0d
debug(ci): enable npm verbose logging to diagnose OIDC failure in wor…
ThePlenkov Apr 20, 2026
8998f44
fix(ci): trigger publish.yml on tag push, not via workflow_call
ThePlenkov Apr 20, 2026
e037e92
fix(ci): chain release -> publish via workflow_dispatch (GITHUB_TOKEN…
ThePlenkov Apr 20, 2026
eec1113
fix(ci): grant actions: write to release job so it can dispatch publi…
ThePlenkov Apr 20, 2026
0f20e19
chore(ci): remove redundant npm upgrade step
ThePlenkov Apr 20, 2026
55d7182
docs: refreshed root README + READMEs for 4 previously undocumented p…
ThePlenkov Apr 21, 2026
f373972
feat(nx-cloud): setup nx cloud workspace
ThePlenkov Apr 21, 2026
6d05335
Merge pull request #112 from abapify/nx-cloud-setup
ThePlenkov Apr 21, 2026
cc9bafc
chore(release): publish 0.3.6 [skip ci]
github-actions[bot] Apr 21, 2026
55a9a01
chore(sonarcloud): fix ~220 mechanical findings across 87 files
ThePlenkov Apr 21, 2026
98d3b32
chore(ci): remove NX_NO_CLOUD=true workaround (OIDC auth activated)
ThePlenkov Apr 21, 2026
31f3fbf
ci: wire NX_CLOUD_ACCESS_TOKEN via GitHub Environments
ThePlenkov Apr 21, 2026
c948114
Merge branch 'main' into chore/sonarcloud-fixes
ThePlenkov Apr 21, 2026
9c59fb4
cleanup(sonarcloud): tidy two files left with orphaned comments
ThePlenkov Apr 21, 2026
b2926a7
fix(sonarcloud-review): safe-guard JSON.stringify in S6551 helpers
ThePlenkov Apr 21, 2026
403c170
Merge pull request #113 from abapify/chore/sonarcloud-fixes
ThePlenkov Apr 21, 2026
53fef7f
fix(security): unblock SonarCloud Quality Gate on new_security_hotspo…
ThePlenkov Apr 21, 2026
6bae5f1
Merge branch 'main' into feat/aclass-parser
ThePlenkov Apr 21, 2026
7284123
feat(aclass): Wave 1+2 — parser, typed AST, fixtures, roundtrip
ThePlenkov Apr 21, 2026
47284e8
feat(openai-codegen): Wave 3 — aclass parse-gate + lexer extensions
ThePlenkov Apr 21, 2026
47fedde
fix(aclass): proper regex metacharacter escaping in `kw()` helper
ThePlenkov Apr 21, 2026
e30cd72
style(aclass): drop redundant `\-` in REGEX_META character class
ThePlenkov Apr 21, 2026
d0bd63d
Initial plan
Copilot Apr 21, 2026
0231409
chore: outline plan for cross-platform and plugin fixes
Copilot Apr 21, 2026
6236b2b
fix: apply cross-platform scanning and runtime configurability updates
Copilot Apr 21, 2026
d9b6204
ci: split Nx Cloud token into RO/RW repo secrets, drop environments
ThePlenkov Apr 21, 2026
cfc5faf
Merge branch 'main' into copilot/fix-unix-specific-find-command
ThePlenkov Apr 21, 2026
a14c5b6
fix: address validation feedback for quote stripping and adt binary path
Copilot Apr 21, 2026
9bbbc04
fix: harden cross-platform resolver traversal and adt command execution
Copilot Apr 21, 2026
86bf6fa
fix(aclass+openai-codegen): address PR #111 review findings
ThePlenkov Apr 21, 2026
6d80fa1
refactor(aclass): extract parseNameTypeStatement helper to fix SonarC…
ThePlenkov Apr 21, 2026
22c0882
feat(aclass): typed EventDecl + forward-class decl + abaplint gate
ThePlenkov Apr 21, 2026
7c458bb
fix(aclass): qualified method names + keyword method names
ThePlenkov Apr 21, 2026
b35bb8d
Merge branch 'main' into feat/aclass-parser
ThePlenkov Apr 21, 2026
c114935
Merge pull request #111 from abapify/feat/aclass-parser
ThePlenkov Apr 21, 2026
23d8b4f
Merge branch 'main' into copilot/fix-unix-specific-find-command
ThePlenkov Apr 21, 2026
d706394
security: anchor github.com host match in detectGithubRepo
ThePlenkov Apr 21, 2026
f219ee1
security: rename report.checks.mfa to mfaPolicy to reflect semantics
ThePlenkov Apr 21, 2026
62615e4
quality: simplify detectGithubRepo to cut regex complexity
ThePlenkov Apr 21, 2026
0a6c9b5
review: harden detectGithubRepo (SCP vs URL, dotted repos, shell-safe…
ThePlenkov Apr 21, 2026
a37fe33
Merge pull request #115 from abapify/fix/main-health
ThePlenkov Apr 21, 2026
959fe62
Merge branch 'main' into copilot/fix-unix-specific-find-command
ThePlenkov Apr 21, 2026
b0a3e4d
review: restore check.ts script path in nx-npm-trust plugin
ThePlenkov Apr 21, 2026
2d5981c
quality: deterministic sort + node: imports in built-in abapGit resolver
ThePlenkov Apr 21, 2026
7b554eb
quality: dedupe abapGit finding resolver (adt-plugin-abapgit → adt-atc)
ThePlenkov Apr 21, 2026
601e7a7
review: enable shell mode on Windows for adt .cmd execution
ThePlenkov Apr 21, 2026
1c3d4e6
review: normalise resolver paths to POSIX separators
ThePlenkov Apr 21, 2026
59a5889
review: use bunx for adt CLI invocation (monorepo hoisting)
ThePlenkov Apr 21, 2026
67699f8
security: resolve adt binary by walking up node_modules/.bin
ThePlenkov Apr 21, 2026
3ca1042
Merge pull request #114 from abapify/copilot/fix-unix-specific-find-c…
ThePlenkov Apr 21, 2026
0fa246e
Merge branch 'main' into add-adk-unit-tests
ThePlenkov Apr 21, 2026
96a74c1
review(adk tests): fix toText expectations, isolate registry state
ThePlenkov Apr 21, 2026
ab2feaf
feat(openspec): add-abapify-pilot spec — proposal, design, specs, tasks
Copilot Apr 28, 2026
4b3d3fa
feat(adt-pilot): scaffold package — source, tests, config
Copilot Apr 28, 2026
c5efa40
feat(adt-pilot): fix build — disable dts (OOM), explicit return types
Copilot Apr 28, 2026
d4b87e8
refactor(adt-pilot): rework workflow + harness modes for 100% accuracy
devin-ai-integration[bot] Apr 30, 2026
0f1520d
fix(adt-pilot): use https in test/example URLs to clear SonarCloud ho…
devin-ai-integration[bot] Apr 30, 2026
b75a754
fix(adt-pilot): use extensionless internal imports per bundler-import…
devin-ai-integration[bot] May 1, 2026
82df574
fix(adt-pilot): align declared deps with actual usage
devin-ai-integration[bot] May 1, 2026
899574f
chore(nx): migrate nx 22.5.3 → 22.7.1
ThePlenkov May 6, 2026
64fe41c
docs: add MCP changeset tools and aclass package documentation
ThePlenkov May 7, 2026
cf179fb
Merge branch 'main' into pr-114
ThePlenkov May 7, 2026
afc3b34
review: address PR #117 feedback
ThePlenkov May 7, 2026
dbfd704
fix: apply CodeRabbit auto-fixes
coderabbitai[bot] May 8, 2026
cc9cfea
fix: apply CodeRabbit auto-fixes
coderabbitai[bot] May 8, 2026
ddda5bc
Merge pull request #117 from abapify/pr-114
ThePlenkov May 11, 2026
e377e8a
Merge branch 'main' into copilot/implement-abapify-pilot-agent
ThePlenkov May 11, 2026
b2a10e0
fix(adt-pilot): address review and lint findings
devin-ai-integration[bot] May 11, 2026
83ec8b5
chore: rerun code review check
devin-ai-integration[bot] May 11, 2026
f42dfad
Merge pull request #116 from abapify/copilot/implement-abapify-pilot-…
ThePlenkov May 11, 2026
a09cfd9
Merge branch 'main' into add-adk-unit-tests
ThePlenkov May 11, 2026
06606a4
Merge pull request #97 from abapify/add-adk-unit-tests
ThePlenkov May 11, 2026
563c7ad
feat(openspec): add arc-1-feature-parity change proposal with SDD art…
Copilot May 11, 2026
afe421b
feat(adt-lint): scaffold shared abaplint utilities package
Copilot May 11, 2026
ba5d54c
feat: implement arc-1 parity across adt-lint, adt-contracts, adt-mcp,…
Copilot May 11, 2026
4fc9330
fix(adt-lint): replace lazy '.*?' with '[^']*' in token regex to fix …
Copilot May 11, 2026
28d8e77
fix: address PR review — regex security, method detection, BTP 404, l…
devin-ai-integration[bot] May 12, 2026
d3cfea5
fix: reduce duplication, remove useless conditional, harden JSONC parser
devin-ai-integration[bot] May 12, 2026
87ad71b
fix: guard starts[0] with nullish coalescing for SonarCloud reliability
devin-ai-integration[bot] May 12, 2026
24bb1b5
fix: use localeCompare in sort for SonarCloud S2871 reliability
devin-ai-integration[bot] May 12, 2026
3293282
Merge pull request #118 from abapify/copilot/sdd-approach-implement-f…
ThePlenkov May 12, 2026
7f518eb
docs: generate Triangular Consistency Review discrepancy report
google-labs-jules[bot] May 12, 2026
7e177a4
Potential fix for pull request finding
ThePlenkov May 12, 2026
2e8e2e2
Potential fix for pull request finding
ThePlenkov May 12, 2026
fd457d4
Potential fix for pull request finding
ThePlenkov May 12, 2026
b0309b4
Potential fix for pull request finding
ThePlenkov May 12, 2026
f62741a
docs: update discrepancy report for clarity and consistency
ThePlenkov May 12, 2026
79a5917
refactor sap connection resolution and align specs/docs
Copilot May 12, 2026
cb2791c
docs: add resolver type documentation for connection service
Copilot May 12, 2026
c1e642e
Merge pull request #119 from abapify/audit-triangular-consistency-rev…
ThePlenkov May 12, 2026
ceef5aa
feat(adt-pilot): add local dev stack for HTTP MCP and Mastra playground
ThePlenkov May 18, 2026
71aa835
Merge branch 'main' into copilot/implement-abapify-pilot-agent
ThePlenkov May 18, 2026
cd5aa0a
Apply suggestions from code review
ThePlenkov May 18, 2026
5c0b3a2
Potential fix for pull request finding
ThePlenkov May 18, 2026
82e625c
chore: placeholder — outlining fixes
Copilot May 18, 2026
ff0b0a3
chore(agents): consolidate SSOT under .agents with runtime stubs
ThePlenkov May 18, 2026
ad98e5c
fix(adt-pilot): remove unused @mastra/mcp dep; fix URL log sanitizati…
Copilot May 18, 2026
377702b
Apply suggestions from code review
ThePlenkov May 18, 2026
a8efa47
fix(adt-pilot): lint failure, URL credential leak, doc port inconsist…
Copilot May 18, 2026
43d63ab
fix(adt-pilot): address PR #121 review — docs, types, workspace deps
ThePlenkov May 18, 2026
dbecd12
Merge pull request #121 from abapify/copilot/implement-abapify-pilot-…
ThePlenkov May 18, 2026
4671013
Merge branch 'main' into chore/agents-ssot-from-dotagents
ThePlenkov May 18, 2026
576b048
fix(agents): run Codex nx MCP via bunx to match monorepo convention
ThePlenkov May 18, 2026
54fa65e
chore(agents): format adt workflows README for nx format:check
ThePlenkov May 18, 2026
2417822
Merge pull request #123 from abapify/chore/agents-ssot-from-dotagents
ThePlenkov May 18, 2026
0d22028
chore(agents): update verification guidelines and clarify Prettier usage
ThePlenkov May 18, 2026
559fcda
chore: update subproject commit for abap-file-formats
ThePlenkov May 18, 2026
aa0ce0c
Initial plan
Copilot May 19, 2026
213f7be
feat: transport deletion-aware import with obj_func filter and multi-…
Copilot May 19, 2026
6db0b03
refactor: address code review - use path.basename, export matchesSele…
Copilot May 19, 2026
30538f0
refactor: extract shared parseFilterOption helper to command-helpers,…
Copilot May 19, 2026
0bc1ffb
feat: simplify import transport - comma-sep multi-TR, --save-tr-metad…
Copilot May 19, 2026
6975b33
fix: prefer-const lint error in cts tr objects command
Copilot May 19, 2026
f7b17d6
Changes before error encountered
Copilot May 19, 2026
60befaf
fix: apply prettier formatting to service.ts
Copilot May 19, 2026
49e109b
Apply suggestions from code review
ThePlenkov May 19, 2026
4dfac4f
Potential fix for pull request finding
ThePlenkov May 19, 2026
7b4ee3a
fix: optimize findObjectFiles index, restore transportNumber compat, …
Copilot May 19, 2026
caa7fd2
chore: require Copilot to finish only when all PR checks are green
ThePlenkov May 20, 2026
621f1fe
fix: resolve SonarCloud reliability and duplication findings
Copilot May 20, 2026
b691e58
fix: use const variable for transportNumbers[0] to avoid non-null ass…
Copilot May 20, 2026
19d472f
Merge pull request #125 from abapify/copilot/feature-transport-object…
ThePlenkov May 20, 2026
510a995
refactor transport resolution and hoist test helpers for Sonar findings
Copilot May 20, 2026
0a43793
Merge pull request #126 from abapify/copilot/fix-sonarqube-findings
ThePlenkov May 20, 2026
72a6ba3
Initial plan
Copilot May 20, 2026
5e2e605
docs: improve after-changes.md clarity, fix broken links in AGENTS.md…
Copilot May 20, 2026
aba8828
Merge pull request #127 from abapify/copilot/update-package-guidance
ThePlenkov May 20, 2026
2509737
feat: add e2e/adt-sdk to .gitignore
ThePlenkov May 29, 2026
9c35b49
feat(p2): include p2-cli in CI publish pipeline
ThePlenkov May 29, 2026
9e91cc3
feat(p2): bootstrap npm publish metadata and trusted publishing
ThePlenkov May 29, 2026
da4440d
Merge pull request #128 from abapify/feat/p2-cli-ci-publish
ThePlenkov May 29, 2026
ac97d5d
chore(release): publish 0.4.0 [skip ci]
github-actions[bot] May 29, 2026
2fb6679
Initial plan
Copilot May 29, 2026
07b6f99
Initial progress report
Copilot May 29, 2026
18a3d70
fix: ensure p2-cli dist/ is built before npm publish
Copilot May 29, 2026
7d0c135
Merge pull request #130 from abapify/copilot/abapifyp2-cli-fix-publis…
ThePlenkov May 29, 2026
e3df65a
chore(release): publish 0.4.1 [skip ci]
github-actions[bot] May 29, 2026
178c087
feat: add ADT proxy server with JSON↔XML conversion
Jun 16, 2026
60c94a7
refactor: reduce cyclomatic complexity in proxy server and createServer
Jun 16, 2026
f604085
fix: address CodeRabbit review feedback
Jun 16, 2026
dd869e2
fix: address all review feedback - round 2
Jun 16, 2026
c3548d1
fix: address CI feedback - error handling, fetch timeout, server cras…
Jun 16, 2026
31d4071
fix: use bunx instead of npx in auth hint
Jun 16, 2026
4d88a95
fix: address 3 blocking issues in ADT proxy rework
Jun 16, 2026
048687e
fix: address CI review feedback - security, reliability, and code qua…
Jun 16, 2026
81c3410
fix: address CI failures - remove dynamic RegExp, fix lint errors, ad…
Jun 17, 2026
ffa6e88
fix(lint): use const for defaultHeaders in proxy command
Jun 17, 2026
dd9bc21
fix(proxy): skip set-cookie in forEach loop to prevent header flattening
Jun 17, 2026
93d4a79
Merge pull request #131 from ThePlenkov/gt/maple/a80c2beb
ThePlenkov Jun 17, 2026
2f6f318
chore(deps-dev): bump vite in the npm_and_yarn group across 1 directory
dependabot[bot] Jun 17, 2026
962754c
Merge pull request #132 from abapify/dependabot/npm_and_yarn/npm_and_…
ThePlenkov Jun 17, 2026
a1651fd
feat(source-history): add bounded ADT source history support
ThePlenkov Jul 19, 2026
164e780
feat(adt-mcp): enforce destination scopes
ThePlenkov Jul 19, 2026
e5ce09d
fix(adt-mcp): freeze destination access
ThePlenkov Jul 19, 2026
627efc4
refactor(adt-mcp): expose embeddable HTTP handler
ThePlenkov Jul 19, 2026
f93a008
feat(adt-mcp): verify signed invocations
ThePlenkov Jul 19, 2026
aecb7cc
feat(adt-server): add guarded MCP sidecar
ThePlenkov Jul 19, 2026
6b8e13b
feat(adt-server): configure signed MCP runtime
ThePlenkov Jul 19, 2026
b3b7873
feat(adt-mcp): enforce frozen AI Review reads
ThePlenkov Jul 19, 2026
6d183eb
feat(adt-mcp): scope frozen reads to components
ThePlenkov Jul 19, 2026
34c1075
feat(mcp): bound current source reads
ThePlenkov Jul 19, 2026
239bbdf
fix(mcp): bind immutable sources to capabilities
ThePlenkov Jul 19, 2026
cffdeae
feat(adt-server): add capability-bound source reads
ThePlenkov Jul 19, 2026
f36ff7d
feat(adt-server): allow local REST bearer auth
ThePlenkov Jul 19, 2026
3ed5861
test(adt-server): validate OpenAPI contract
ThePlenkov Jul 19, 2026
14676f7
feat(adt-server): normalize system transport search
ThePlenkov Jul 19, 2026
e12f099
feat(adt-server): release broker leases with audit
ThePlenkov Jul 19, 2026
fe7c815
feat(adt-server): add canonical transport detail REST
ThePlenkov Jul 19, 2026
1357ca9
feat(adt-server): schema capability source responses
ThePlenkov Jul 19, 2026
2c8ed32
feat(adt-server): paginate canonical package search
ThePlenkov Jul 19, 2026
8625e82
feat(adt-server): paginate canonical object search
ThePlenkov Jul 19, 2026
980fe72
feat(adt-server): require shared REST state secrets
ThePlenkov Jul 19, 2026
ee980ef
feat(adt-server): page direct package objects
ThePlenkov Jul 19, 2026
dc3c914
feat(adt-server): add canonical object metadata REST
ThePlenkov Jul 20, 2026
9c7ff68
feat(adt-server): add canonical object history REST
ThePlenkov Jul 20, 2026
124657f
feat(adt-server): add bounded object source REST
ThePlenkov Jul 20, 2026
69b7b3b
feat(adt-server): add canonical ATC REST
ThePlenkov Jul 20, 2026
79102e2
feat(adt-mcp): scope ATC runs without raw URIs
ThePlenkov Jul 20, 2026
88c735d
feat(adt-mcp): reject raw URI read targets
ThePlenkov Jul 20, 2026
e851e3f
feat(adt-server): generate typed REST client
ThePlenkov Jul 20, 2026
e590a6c
feat(adt-mcp): scope autonomous agent reads
ThePlenkov Jul 20, 2026
16683b4
fix(adt-mcp,adt-server,adt-server-client): resolve ESLint errors and …
devin-ai-integration[bot] Jul 21, 2026
df33fdd
fix(adt-mcp): include objectUri in find_references and accept uri in …
devin-ai-integration[bot] Jul 21, 2026
c661893
fix(adt-cli): normalize source-history metadata output to avoid leaki…
devin-ai-integration[bot] Jul 21, 2026
4e69014
chore(website): ignore Docusaurus build artifacts in ESLint
devin-ai-integration[bot] Jul 21, 2026
11b9326
fix(adt-server): pass explicit authTagLength to aes-256-gcm decipher
devin-ai-integration[bot] Jul 21, 2026
19d6dda
fix(codacy): suppress false-positive SSRF and object-injection findings
devin-ai-integration[bot] Jul 21, 2026
7c905f0
fix(codacy): avoid object-injection and user-controlled URL findings
devin-ai-integration[bot] Jul 21, 2026
dd74e24
chore: format destination-mode.ts
devin-ai-integration[bot] Jul 21, 2026
5ca324d
fix(codacy): suppress SSRF false positive on validated ADT URL
devin-ai-integration[bot] Jul 21, 2026
53aa39f
fix(sonar/codacy): reduce destination-mode complexity and add test wr…
devin-ai-integration[bot] Jul 21, 2026
5944c5d
fix(sast): add bearer suppression and reduce registry nesting
devin-ai-integration[bot] Jul 21, 2026
2019e16
fix(codacy): use bare nosemgrep suppression for fetch URL
devin-ai-integration[bot] Jul 21, 2026
d7570c0
fix(sonar): resolve S2187 tests and triage cognitive complexity with …
devin-ai-integration[bot] Jul 21, 2026
379627b
fix(sonar): add assertions to tests and suppress remaining complexity…
devin-ai-integration[bot] Jul 21, 2026
1168022
fix(sonar): resolve MAJOR code smells and regenerate client
devin-ai-integration[bot] Jul 21, 2026
0de115d
style(broker): fix formatting for createHttpDestinationContexts
devin-ai-integration[bot] Jul 21, 2026
d3af943
fix(sonar): resolve S4144, S6551, S6571, S6582, S6644, S7750, S7755, …
devin-ai-integration[bot] Jul 21, 2026
7b6f018
fix: review thread fixes (broker, session, source-history, docs, deps)
devin-ai-integration[bot] Jul 21, 2026
b2a63ea
fix(broker): suppress Codacy SSRF false positive after UAA URL valida…
devin-ai-integration[bot] Jul 21, 2026
90380d6
fix(broker): use nosemgrep to suppress validated UAA fetch finding
devin-ai-integration[bot] Jul 21, 2026
b2bb314
fix(broker): use node:https for UAA token to avoid Codacy fetch SSRF …
devin-ai-integration[bot] Jul 21, 2026
2c7dde8
fix(source-capabilities): require explicit secret or allowEphemeralSe…
devin-ai-integration[bot] Jul 21, 2026
69634e1
refactor(sealed-capability): extract shared encrypted capability service
devin-ai-integration[bot] Jul 21, 2026
b2f6608
refactor(sealed-capability): remove ephemeral secrets, share REST fac…
devin-ai-integration[bot] Jul 21, 2026
57d583b
fix(adt-server): require capability secrets in startAdtServer, use te…
devin-ai-integration[bot] Jul 21, 2026
1176bf6
fix(adt-server): guard capability services behind rest/mcp, share sec…
devin-ai-integration[bot] Jul 21, 2026
fb1e724
refactor(adt-server): extract route dispatcher into request-handler.t…
devin-ai-integration[bot] Jul 21, 2026
1ea6d2e
refactor(adt-server): extract source/documentation validation helpers…
devin-ai-integration[bot] Jul 21, 2026
9137728
refactor(adt-server): centralize error mapping and route dispatch to …
devin-ai-integration[bot] Jul 21, 2026
e1ae252
refactor(adt-server): move route table to module scope and simplify c…
devin-ai-integration[bot] Jul 21, 2026
b50d3fe
refactor(adk): extract helpers in transport-source-manifest to reduce…
devin-ai-integration[bot] Jul 21, 2026
4d7bc74
refactor(adk): split object metadata validation into sequential checks
devin-ai-integration[bot] Jul 21, 2026
e02cac5
refactor(adt-mcp): split invocation token parsing into single-purpose…
devin-ai-integration[bot] Jul 21, 2026
1c24e6d
refactor(adt-mcp): further reduce invocation.ts cyclomatic complexity…
devin-ai-integration[bot] Jul 21, 2026
34c47a0
refactor(adt-mcp): extract parseInvocationActors to reduce buildInvoc…
devin-ai-integration[bot] Jul 21, 2026
7d4b5b2
refactor(adt-server): split page cursor decode into validation helpers
devin-ai-integration[bot] Jul 21, 2026
04625c9
refactor(adt-server): split sealed capability parsing and decryption …
devin-ai-integration[bot] Jul 21, 2026
d76c6a4
refactor(adt-client): split source-version feed normalization into he…
devin-ai-integration[bot] Jul 21, 2026
f54efd2
refactor(adt-server,adk,adt-client): reduce cyclomatic complexity and…
devin-ai-integration[bot] Jul 21, 2026
99e94cd
docs(checkin): align unlock example with current behavior
devin-ai-integration[bot] Jul 21, 2026
3e742c3
chore(codescene): triage code-health findings with per-file threshold…
devin-ai-integration[bot] Jul 21, 2026
f901358
Merge pull request #135 from abapify/feat/adt-server-sidecar-clean
ThePlenkov Jul 21, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
57 changes: 57 additions & 0 deletions .agents/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
# Workspace agents (`adt-cli`)

Team-visible standards for AI-assisted work live here. **`.agents/` is the single source of truth** for rules, skills, workflows, and ADT command docs. Tool-specific folders ([`.cursor/`](../.cursor/README.md), legacy [`.windsurf/`](../.windsurf/README.md)) stay thin so Cursor/Windsurf only add discovery glue (commands, optional stubs).

## Repository conventions

Monorepo layout, MCP↔CLI coupling, rules index, and package-level guides:
[`repo-guide.md`](repo-guide.md).

## Layout

```
.agents/
README.md # You are here
repo-guide.md # Monorepo + architecture reference for agents
agents/ # Multi-agent manifest + per-runtime notes
rules/ # Conditional rules (“when X, do Y”)
skills/ # Skills (SKILL.md trees; shared across agents)
workflows/ # Multi-step procedures (OpenSpec, lint, …)
commands/adt/ # Long-form ADT workflows (schema, contract, …)
```

## Rules (`.agents/rules/`)

Use imperative, scenario-based wording. Agents load these when the situation matches.

## Skills (`.agents/skills/`)

Documentation for the model: prerequisites, commands to run, troubleshooting. Install into a native agent cache with [`npx skills add`](https://github.com/vercel-labs/skills) when needed; the repo copy remains authoritative.

## Workflows (`.agents/workflows/`)

Reusable procedures (OpenSpec opsx-\*, lint). **Cursor slash commands** under `.cursor/commands/` delegate here—edit the workflow file, not the Cursor stub.

ADT specifics: see [`.agents/workflows/adt/README.md`](workflows/adt/README.md) → [`.agents/commands/adt/`](commands/adt/).

## OpenSpec & planning

- `openspec/specs/` — specifications
- `openspec/changes/` — active changes
- `openspec/config.yaml` — project config
- `docs/planning/` — coordination docs

## Memory: internal vs repo

- **Internal** (vendor-specific persistence): preferences and session DB—not committed.
- **Workspace** (this tree + `openspec/`): versioned, reviewable, shared.

Prefer repo-backed docs for anything the team must agree on.

## Migrating from Windsurf

Legacy `.windsurf/workflows/` and `.windsurf/skills/` now **redirect** to `.agents/`. Remove Windsurf-only duplicates from your mental model; extend `.agents/` instead.

## Multi-agent setup

See [`agents/README.md`](agents/README.md) for registered runtimes (Cursor IDE, Claude Code, Windsurf stubs), ownership, and delegation hints.
33 changes: 33 additions & 0 deletions .agents/agents/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# Multi-agent manifest (`adt-cli`)

This repo is edited by **several AI runtimes**. They share one canonical tree—**`.agents/`**—and keep native config thin.

## Principles

1. **Single source of truth**: Rules, skills, and workflow bodies live under `.agents/`.
2. **Thin native layers**: `.cursor/` carries Cursor-only discovery (slash commands → workflows). Legacy `.windsurf/` remains as stubs only.
3. **No duplicated procedure text**: If you change an OpenSpec flow, edit `.agents/workflows/opsx-*.md`.

## Registered agents

| Agent | Native config | Consumes from repo |
| ----------------------- | -------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ |
| **Cursor (IDE)** | `.cursor/commands/`, `.cursor/rules/`, `.cursor/skills/` (stubs) | `.agents/rules/`, `.agents/skills/`, `.agents/workflows/`, `.agents/commands/` |
| **Claude Code / Codex** | `.claude/` ([README](../../.claude/README.md)) — thin commands/skills + hooks/settings | Same `.agents/` paths; sync skills with `npx skills add` when needed |
| **Windsurf Cascade** | `.windsurf/` (**deprecated stubs**) | Redirects to `.agents/` |

Details: [`manifest.yaml`](manifest.yaml).

## Delegation

- **Specs & planning**: OpenSpec workflows in `.agents/workflows/opsx-*.md`.
- **Nx / monorepo**: Skills `nx-workspace`, `nx-run-tasks`, `nx-generate`, … under `.agents/skills/`.
- **ADT / SAP**: Commands under `.agents/commands/adt/` plus skills `add-endpoint`, `adt-export`, etc.

When spawning subagents or parallel tasks, pass **paths under `.agents/`** so every runtime reads the same instructions.

## Adding a new runtime

1. Document it in `manifest.yaml`.
2. Point its skill/rule discovery at `.agents/` (symlink, CLI sync, or copy-on-install).
3. Add a short profile file here (e.g. `my-runtime.md`) describing quirks and env vars—keep vendor secrets out of git.
15 changes: 15 additions & 0 deletions .agents/agents/claude-code.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Claude Code profile (`adt-cli`)

## Role

CLI / IDE agent using `.claude/` for hooks, settings, and native slash commands.

## Where to read first

Same as other runtimes: `.agents/rules/`, `.agents/skills/`, `.agents/workflows/`, and `commands/opsx/*.md` stubs that delegate to `.agents/workflows/opsx-*.md`.

## Claude-only files

Keep secrets scanners, git hooks, and `settings*.json` here—they are not portable to Cursor/Windsurf.

See also: `../../.claude/README.md`.
21 changes: 21 additions & 0 deletions .agents/agents/cursor-ide.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Cursor IDE profile (`adt-cli`)

## Role

Primary interactive editor agent with repo access, terminal, and MCP.

## Where to read first

1. Repo root `AGENTS.md` (Nx expectations).
2. `.agents/rules/` for conditional standards.
3. `.agents/workflows/` when the user runs `/opsx:*` or asks for a procedural flow.

## Cursor-only files

- `.cursor/commands/*.md` — **Stub only**: frontmatter for the `/` palette + pointer to `.agents/workflows/`.
- `.cursor/rules/*.mdc` — Always-on or scoped hints; keep them short.
- `.cursor/skills/openspec-*/SKILL.md` — **Stub only**: discovery wrapper; canonical skill body is `.agents/skills/openspec-*`.

Do not grow duplicate procedure text in `.cursor/`—extend `.agents/` instead.

There is **no** `/models` command in this repo. If you still see one that hits Anthropic’s API, delete it from Cursor (`/commands`) or from `~/.cursor/commands/models.md` / `.cursor/commands/models.md`.
29 changes: 29 additions & 0 deletions .agents/agents/manifest.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# Multi-agent registry for adt-cli (documentation contract; not loaded by tooling yet).
version: 1
canonical_roots:
rules: .agents/rules/
skills: .agents/skills/
workflows: .agents/workflows/
adt_commands: .agents/commands/

agents:
- id: cursor-ide
description: Cursor IDE composer/agent
native_config_root: .cursor/
thin_layer_readme: .cursor/README.md
entrypoints:
slash_commands: .cursor/commands/
optional_rules: .cursor/rules/
skill_stubs: .cursor/skills/

- id: claude-code
description: Claude Code / CLI agents using local .claude/
native_config_root: .claude/
thin_layer_readme: .claude/README.md
notes: Slash commands and openspec skill stubs delegate to .agents/; hooks/settings stay in .claude/.

- id: windsurf-cascade
description: Windsurf Cascade (legacy)
native_config_root: .windsurf/
deprecated: true
migration: Prefer .agents/; .windsurf retains redirect stubs only.
Loading
Loading