mirror of
https://github.com/qwibitai/nanoclaw.git
synced 2026-07-06 18:52:03 +08:00
f6901e01a4
One sign-in and one create command replace the ~7-step Azure portal walk: - have_creds probe runs FIRST (either credential key in .env skips every creation step — prompts included — so re-runs drop straight to Restart; either-key semantics prevent a partial .env from pairing a new app with stale keys, the guaranteed-401 mismatch). - teams login runs as nc:run effect:step (browser locally, device code over SSH; body emits the terminal status block the streaming exec requires). - teams app create --json is one effect:external with a five-var JSON capture (CLIENT_ID/CLIENT_SECRET/TENANT_ID + teamsAppId + installLink), validate:^.+$ so a shape drift bounces instead of writing empty creds. Single-tenant (--sign-in-audience myOrg) is the default pairing; the CLI registers a Teams-managed bot — no Azure subscription, no manifest zip, no manual sideload. - Webhook endpoint corrected everywhere: /webhook/teams (was /api/webhooks/teams, which silently receives nothing). - Portal walk + multi-tenant variant moved to prose Alternatives; RSC via teams app rsc add (CLI path) or manifest --rsc re-sideload (manual path). - REMOVE.md: teams logout before CLI uninstall (MSAL cache outlives the package), Entra deletion required on both paths (it revokes the secret), drop the retired data/env mirror step. - Parity tests rewritten: drop-through fixture (creds present → no create, no prompts, fail() spy), runSkill-level fresh-create fixture (injected execStream; proves capture→env-set chain + substituted install-link URL offer), probe semantics executed from the shipped document, policy gate inventory updated (3 operators, 1 barrier). - claude-assist: point teams handoff file lists at files that exist on this branch. Known deferrals (engine-owned, flagged for the SSF branch owner): reuseFromEnv offers capture-var env keys on re-runs (needs a one-line promptShape guard); effect:external is not run-health gated; captures cannot be marked secret. docs/skill-engine-seam.md line anchors into the old teams SKILL.md are stale (pre-existing anchoring style). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>