Skip to content

refactor(project-management): overhaul auth flow and rename handover skills#181

Draft
asthabh23 wants to merge 8 commits into
mainfrom
update-project-mgmt
Draft

refactor(project-management): overhaul auth flow and rename handover skills#181
asthabh23 wants to merge 8 commits into
mainfrom
update-project-mgmt

Conversation

@asthabh23

Copy link
Copy Markdown
Member

Summary

  • Auth overhaul: Replaced Playwright-based login with a local HTTP loopback callback server — the user's real browser handles auth, clicking "Send" posts the token back to localhost. Auto-detects IDP via /login/{org}/{site}/main, eliminating the content source question.
  • Token storage: Tokens stored at ~/.aem/ims-token.json (user-level, shared across projects). project-config.json stores only handover context (org, allGuides flag), not token fields.
  • Skill renames: authoringhandover-author, developmenthandover-developer, adminhandover-admin for clearer namespace alignment.
  • Ops skill improvements: Asks for preview/live URL upfront to derive both org and site in one step; expanded DA resource documentation.
  • Bug fixes: AUTH_TOKEN ordering fixed across all handover skills; missing x-auth-token headers added; parallel agent execution reads SKILL.md directly instead of invoking Skill tool.

Test plan

  • Run auth skill for a DA-backed site and verify token saved to ~/.aem/ims-token.json
  • Run auth skill for a SharePoint/Google Drive site and verify IDP auto-detection via /login/{org}/{site}/main
  • Confirm no Playwright dependency required (browser-based loopback flow works end-to-end)
  • Run handover orchestrator and verify project-config.json contains only org/allGuides (no token fields)
  • Verify handover-author, handover-developer, handover-admin skills resolve correctly under new names
  • Run ops skill with a preview URL and confirm org+site are derived and saved to ops-config.json

🤖 Generated with Claude Code

asthabh23 and others added 7 commits June 2, 2026 19:32
…login to support all content sources

- Rename authoring → handover-author, development → handover-developer, admin → handover-admin
- Auth skill now uses admin.hlx.page/login/{org}/{site}, captures token from auth_token cookie on login completion
- All admin.hlx.page API calls use x-auth-token header
- DA content operations (admin.da.live) retain separate Adobe IMS Bearer auth
- Token file stores both authToken (admin.hlx.page) and imsToken (DA) in ~/.aem/ims-token.json
- Tested against DA, Google Drive, and SharePoint content sources

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- admin.hlx.page/login/{org} works without site name
- User can provide org name or a preview/live URL (org is parsed from it)
- Removed unnecessary site dependency from auth flow

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
… all skills

- Fix token ordering in handover-author, handover-developer, handover-admin
- Add missing x-auth-token header to unauthenticated sites.json calls
- Correct "cookie" wording to "header" in ops SKILL.md
- Fix token storage table description in auth SKILL.md

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…nd skill namespace rename

- Move token storage from ~/.aem/ to .claude-plugin/project-config.json
- Route auth through /auth/{provider} instead of /login/{org} to support
  Microsoft, Google, and Adobe identity providers based on content source
- Unify all APIs (admin.hlx.page, admin.da.live, Config Service) on
  x-auth-token header, removing separate IMS/Bearer flow
- Add org validation step in handover orchestrator with retry loop
- Fix parallel agent execution to read SKILL.md directly instead of
  invoking Skill tool (resolves permission prompt issue)
- Rename skill namespace from project-management:* to aem-project-management:*

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…andover context only

Auth skill saves tokens to ~/.aem/ims-token.json (user-level, shared),
reads authProvider from .claude-plugin/project-config.json when set by
handover orchestrator. Handover stores only project context (org,
contentSource, authProvider) in project-config — no token fields.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…ntent source question

- Auth skill uses /login/{org}/{site}/main which auto-redirects to the
  correct identity provider. Resolves org from project-config or
  ops-config, site from git remote or ops-config.
- Ops skill asks for preview/live URL upfront to get both org and site
  in one question. Saves both to ~/.aem/ops-config.json.
- Handover orchestrator simplified: project-config stores only org and
  allGuides flag. Site derived from git remote.
- Removes authProvider/contentSource fields from project-config entirely.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…ogin message

Removes Playwright dependency entirely — uses a local HTTP callback server
instead. The user's real browser handles login, and clicking "Send" delivers
the token via POST to localhost. Also adds prominent user-facing instruction
before launching the browser.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Jun 12, 2026

Copy link
Copy Markdown

Tessl Skill Lint

⚠️ edge-delivery-services — 1 warning(s)
⚠ tile.json is deprecated. Migrate to .tessl-plugin/plugin.json to publish a plugin-shape package. Run `tessl plugin migrate` to convert automatically. tile.json support will be removed in a future release.

✔ Plugin adobe/aem-edge-delivery-services@0.1.0 is valid
⚠️ stardust — 1 warning(s)
⚠ tile.json is deprecated. Migrate to .tessl-plugin/plugin.json to publish a plugin-shape package. Run `tessl plugin migrate` to convert automatically. tile.json support will be removed in a future release.

✔ Plugin adobe/stardust@0.10.0 is valid

✅ All 2 tile(s) lint passed with 2 warning(s) total.

Updated by tessl-lint for commit a587a64.

@asthabh23 asthabh23 marked this pull request as draft June 12, 2026 09:14
- Add explicit "Use when" clause to handover-admin/author/developer descriptions
- Remove redundant emphasis patterns (❌/✅ lists, ⚠️ warnings, CRITICAL PATH sections)
- Add inline API validation after sites.json calls with immediate error feedback
- Extract 230-line developer guide template to resources/developer-guide-template.md
  (brings handover-developer under 500-line hard limit, was 609)
- Move ops security/confirmation rules to resources/security.md
- Move ops sensitive data handling to resources/sensitive.md
- Move ops error handling to resources/errors.md
- Remove Intent Detection Patterns section from ops (duplicated routing table)
- Trim handover orchestrator by ~40% (remove MANDATORY RULES, CRITICAL PATH,
  Benefits of parallel execution, and verbose rationale blocks)
- Restore Success Criteria tables to handover-admin/author/developer

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant