@mmerterden/multi-agent-pipeline 20.34.0 → 20.36.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +69 -1
- package/README.md +7 -5
- package/README.tr.md +6 -5
- package/docs/architecture.md +3 -3
- package/docs/ecosystem.md +5 -5
- package/docs/facts.json +4 -4
- package/install/catalog-history.json +1 -1
- package/install/claude.mjs +16 -1
- package/install/templates/claude-hooks.json +23 -1
- package/manifest.json +338 -305
- package/package.json +5 -1
- package/pipeline/agents/bulk-reader.md +3 -0
- package/pipeline/commands/multi-agent/channels/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/office-on/SKILL.md +7 -3
- package/pipeline/commands/multi-agent/office-pair/SKILL.md +66 -0
- package/pipeline/commands/multi-agent/office-status/SKILL.md +3 -2
- package/pipeline/commands/multi-agent/sync/SKILL.md +3 -3
- package/pipeline/contract/CHANGELOG.md +9 -0
- package/pipeline/contract/README.md +1 -0
- package/pipeline/contract/fixtures/error-invalid-request.json +1 -1
- package/pipeline/contract/fixtures/error-unauthorized.json +1 -1
- package/pipeline/contract/fixtures/error-unsigned.json +1 -1
- package/pipeline/contract/manifest.json +14 -1
- package/pipeline/contract/types/index.d.ts +24 -2
- package/pipeline/lib/json-file-lock.mjs +61 -15
- package/pipeline/lib/office-remote.mjs +228 -0
- package/pipeline/lib/qr-code.mjs +386 -0
- package/pipeline/lib/repo-hygiene.sh +1 -0
- package/pipeline/lib/run-completion.mjs +17 -0
- package/pipeline/multi-agent-refs/channels/issue-comment.md +1 -1
- package/pipeline/multi-agent-refs/cross-cli-contract.md +4 -4
- package/pipeline/multi-agent-refs/features/office-remote-protocol.md +166 -0
- package/pipeline/multi-agent-refs/features/office-threat-model.md +1 -1
- package/pipeline/multi-agent-refs/features/scope-check.md +16 -1
- package/pipeline/multi-agent-refs/features/verify-by-test.md +10 -0
- package/pipeline/multi-agent-refs/help/en.md +1 -0
- package/pipeline/multi-agent-refs/help/tr.md +1 -0
- package/pipeline/multi-agent-refs/keychain.md +7 -0
- package/pipeline/multi-agent-refs/phases/phase-0-init.md +6 -2
- package/pipeline/multi-agent-refs/phases/phase-1-plan.md +4 -6
- package/pipeline/multi-agent-refs/phases/phase-2-dev.md +9 -12
- package/pipeline/multi-agent-refs/phases/phase-3-review.md +9 -8
- package/pipeline/multi-agent-refs/phases/phase-4-commit.md +1 -4
- package/pipeline/multi-agent-refs/rules.md +3 -2
- package/pipeline/multi-agent-refs/tracker-contract.md +1 -1
- package/pipeline/office/NOTICE.md +4 -1
- package/pipeline/office/assets/char_12.png +0 -0
- package/pipeline/office/assets/char_13.png +0 -0
- package/pipeline/office/assets/char_14.png +0 -0
- package/pipeline/office/assets/char_15.png +0 -0
- package/pipeline/office/assets/char_16.png +0 -0
- package/pipeline/office/assets/char_17.png +0 -0
- package/pipeline/office/assets/char_18.png +0 -0
- package/pipeline/office/assets/char_19.png +0 -0
- package/pipeline/office/assets/char_20.png +0 -0
- package/pipeline/office/assets/char_21.png +0 -0
- package/pipeline/office/assets/char_22.png +0 -0
- package/pipeline/office/assets/char_23.png +0 -0
- package/pipeline/office/assets/char_24.png +0 -0
- package/pipeline/office/assets/char_25.png +0 -0
- package/pipeline/office/assets/char_26.png +0 -0
- package/pipeline/office/assets/char_27.png +0 -0
- package/pipeline/office/assets/char_28.png +0 -0
- package/pipeline/office/assets/char_29.png +0 -0
- package/pipeline/office/assets/char_30.png +0 -0
- package/pipeline/office/index.html +293 -49
- package/pipeline/schemas/agent-state.schema.json +18 -0
- package/pipeline/schemas/planning-output.schema.json +18 -0
- package/pipeline/schemas/pr-reach.schema.json +55 -0
- package/pipeline/schemas/prefs.schema.json +13 -7
- package/pipeline/schemas/triage-output.schema.json +12 -1
- package/pipeline/schemas/unattended-policy.json +2 -1
- package/pipeline/scripts/_guard_rules.py +449 -1
- package/pipeline/scripts/_test-gaming.mjs +36 -0
- package/pipeline/scripts/agent-guard.py +79 -19
- package/pipeline/scripts/anonymize-findings.mjs +99 -0
- package/pipeline/scripts/answer-check.mjs +113 -0
- package/pipeline/scripts/answer-check.sh +20 -0
- package/pipeline/scripts/autopilot-publish.mjs +9 -2
- package/pipeline/scripts/contract-server.mjs +35 -1
- package/pipeline/scripts/gate-ledger.mjs +144 -21
- package/pipeline/scripts/office-build.mjs +276 -5
- package/pipeline/scripts/office-control.mjs +70 -10
- package/pipeline/scripts/office-pair.mjs +438 -0
- package/pipeline/scripts/office-remote-client.mjs +463 -0
- package/pipeline/scripts/phase-tracker.sh +8 -0
- package/pipeline/scripts/phase0-exit-gate.mjs +40 -37
- package/pipeline/scripts/phone-devices.mjs +9 -1
- package/pipeline/scripts/pre-commit-check.sh +28 -2
- package/pipeline/scripts/pre-push-check.sh +6 -12
- package/pipeline/scripts/rework-base.mjs +87 -0
- package/pipeline/scripts/run-commit-check.mjs +104 -0
- package/pipeline/scripts/run-scope-guard.mjs +58 -3
- package/pipeline/scripts/run-scope-guard.sh +13 -1
- package/pipeline/scripts/scope-check-gate.mjs +70 -6
- package/pipeline/scripts/task-mirror.mjs +106 -15
- package/pipeline/scripts/task-mirror.sh +3 -2
- package/pipeline/scripts/test-stability-gate.mjs +112 -0
- package/pipeline/scripts/update-check.sh +7 -1
- package/pipeline/scripts/update-issue-progress.sh +73 -8
- package/pipeline/scripts/validate-planning.mjs +105 -1
- package/pipeline/scripts/validate-triage.mjs +42 -2
- package/pipeline/scripts/work-items.mjs +119 -1
- package/pipeline/scripts/worktree-prepare-all.mjs +200 -0
- package/pipeline/scripts/worktree-prepare.sh +40 -4
- package/pipeline/scripts/write-state.mjs +67 -24
- package/pipeline/skills/.skill-manifest.json +12 -8
- package/pipeline/skills/.skills-index.json +15 -4
- package/pipeline/skills/shared/README.md +4 -3
- package/pipeline/skills/shared/core/apple-archive-compliance/SKILL.md +1 -1
- package/pipeline/skills/shared/core/google-play-compliance/SKILL.md +6 -6
- package/pipeline/skills/shared/core/google-play-compliance/references/rules.yml +1 -1
- package/pipeline/skills/shared/core/multi-agent-channels/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-office-pair/SKILL.md +19 -0
- package/pipeline/skills/shared/core/multi-agent-office-status/SKILL.md +2 -2
- package/pipeline/skills/shared/core/multi-agent-sync/SKILL.md +3 -3
- package/pipeline/skills/shared/external/alarmkit/references/alarmkit-patterns.md +14 -0
- package/pipeline/skills/shared/external/android-architecture/references/patterns.md +6 -0
- package/pipeline/skills/shared/external/android-build-quality-gates/references/patterns.md +10 -0
- package/pipeline/skills/shared/external/android-datastore/references/patterns.md +11 -0
- package/pipeline/skills/shared/external/android-design-tokens-codegen/references/patterns.md +8 -0
- package/pipeline/skills/shared/external/android-jetpack-compose-expert/references/patterns.md +6 -0
- package/pipeline/skills/shared/external/android-mvi-viewmodel/references/patterns.md +10 -0
- package/pipeline/skills/shared/external/android-performance/references/patterns.md +13 -0
- package/pipeline/skills/shared/external/android-security/references/patterns.md +16 -0
- package/pipeline/skills/shared/external/api-patterns/references/contract-details.md +9 -0
- package/pipeline/skills/shared/external/api-security-best-practices/references/abuse-controls.md +12 -0
- package/pipeline/skills/shared/external/api-security-best-practices/references/identity-and-access.md +13 -0
- package/pipeline/skills/shared/external/api-security-best-practices/references/request-handling.md +12 -0
- package/pipeline/skills/shared/external/app-clips/references/data-handoff-notifications-location.md +9 -0
- package/pipeline/skills/shared/external/app-clips/references/routing-and-experiences.md +8 -0
- package/pipeline/skills/shared/external/app-clips/references/size-capabilities-and-promotion.md +10 -0
- package/pipeline/skills/shared/external/app-intents/references/appintents-advanced.md +21 -0
- package/pipeline/skills/shared/external/app-store-optimization/references/keyword-research-methodology.md +9 -0
- package/pipeline/skills/shared/external/app-store-optimization/references/product-page-variants.md +7 -0
- package/pipeline/skills/shared/external/app-store-review/SKILL.md +2 -2
- package/pipeline/skills/shared/external/app-store-review/references/privacy-manifest.md +10 -0
- package/pipeline/skills/shared/external/app-store-review/references/review-checklists.md +10 -1
- package/pipeline/skills/shared/external/apple-on-device-ai/references/coreml-conversion.md +22 -0
- package/pipeline/skills/shared/external/apple-on-device-ai/references/coreml-optimization.md +17 -0
- package/pipeline/skills/shared/external/apple-on-device-ai/references/foundation-models.md +22 -0
- package/pipeline/skills/shared/external/apple-on-device-ai/references/mlx-swift.md +17 -0
- package/pipeline/skills/shared/external/authentication/references/keychain-biometric.md +9 -0
- package/pipeline/skills/shared/external/authentication/references/passkeys.md +11 -0
- package/pipeline/skills/shared/external/avkit/references/avkit-patterns.md +13 -0
- package/pipeline/skills/shared/external/background-processing/references/background-task-patterns.md +9 -0
- package/pipeline/skills/shared/external/callkit-voip/references/callkit-patterns.md +10 -0
- package/pipeline/skills/shared/external/cloudkit-sync/references/cloudkit-patterns.md +15 -0
- package/pipeline/skills/shared/external/compose-components/references/patterns.md +7 -0
- package/pipeline/skills/shared/external/compose-navigation/references/patterns.md +7 -0
- package/pipeline/skills/shared/external/compose-testing/references/patterns.md +15 -0
- package/pipeline/skills/shared/external/contacts-framework/references/contacts-patterns.md +9 -0
- package/pipeline/skills/shared/external/core-bluetooth/references/ble-patterns.md +11 -0
- package/pipeline/skills/shared/external/core-motion/references/motion-patterns.md +10 -0
- package/pipeline/skills/shared/external/core-nfc/references/nfc-patterns.md +13 -0
- package/pipeline/skills/shared/external/coreml/references/coreml-swift-integration.md +20 -0
- package/pipeline/skills/shared/external/cryptokit/references/cryptokit-patterns.md +16 -0
- package/pipeline/skills/shared/external/debugging-instruments/references/instruments-guide.md +16 -0
- package/pipeline/skills/shared/external/debugging-instruments/references/lldb-patterns.md +14 -0
- package/pipeline/skills/shared/external/device-integrity/references/device-integrity-patterns.md +13 -0
- package/pipeline/skills/shared/external/energykit/references/energykit-patterns.md +10 -0
- package/pipeline/skills/shared/external/eventkit-calendar/references/eventkit-patterns.md +10 -0
- package/pipeline/skills/shared/external/fastapi-pro/references/app-structure.md +10 -0
- package/pipeline/skills/shared/external/gradle-kotlin-dsl/references/patterns.md +17 -0
- package/pipeline/skills/shared/external/healthkit/references/healthkit-patterns.md +12 -0
- package/pipeline/skills/shared/external/hig-app-icons/references/icon-workflow.md +10 -0
- package/pipeline/skills/shared/external/hig-components-content/references/content-views.md +10 -0
- package/pipeline/skills/shared/external/hig-components-layout/references/bars-and-tabs.md +11 -0
- package/pipeline/skills/shared/external/hig-foundations/references/foundations-detail.md +13 -0
- package/pipeline/skills/shared/external/hig-foundations/references/type-color-spacing.md +13 -0
- package/pipeline/skills/shared/external/hig-patterns/references/onboarding-and-states.md +11 -0
- package/pipeline/skills/shared/external/hig-platforms/references/ipad-layout.md +12 -0
- package/pipeline/skills/shared/external/hig-technologies/references/technologies.md +16 -0
- package/pipeline/skills/shared/external/homekit-matter/references/matter-commissioning.md +9 -0
- package/pipeline/skills/shared/external/ios-accessibility/references/a11y-patterns.md +18 -0
- package/pipeline/skills/shared/external/ios-accessibility/references/large-content-and-appearance.md +9 -0
- package/pipeline/skills/shared/external/ios-accessibility/references/media-accessibility.md +9 -0
- package/pipeline/skills/shared/external/ios-accessibility/references/nutrition-labels.md +7 -0
- package/pipeline/skills/shared/external/ios-coding-standard/references/STANDARD.md +13 -0
- package/pipeline/skills/shared/external/ios-design-review/references/appearance-matrix.md +9 -0
- package/pipeline/skills/shared/external/ios-design-review/references/checklist.md +15 -0
- package/pipeline/skills/shared/external/ios-haptics/references/core-haptics.md +11 -0
- package/pipeline/skills/shared/external/ios-iphone-duo/references/api-map.md +11 -0
- package/pipeline/skills/shared/external/ios-iphone-duo/references/fixed-assumptions.md +15 -0
- package/pipeline/skills/shared/external/ios-iphone-duo/references/poses-and-panes.md +11 -0
- package/pipeline/skills/shared/external/ios-localization/references/formatstyle-locale.md +18 -0
- package/pipeline/skills/shared/external/ios-localization/references/string-catalogs.md +19 -0
- package/pipeline/skills/shared/external/ios-networking/references/background-websocket.md +15 -0
- package/pipeline/skills/shared/external/ios-networking/references/file-storage-patterns.md +7 -0
- package/pipeline/skills/shared/external/ios-networking/references/lightweight-clients.md +8 -0
- package/pipeline/skills/shared/external/ios-networking/references/network-framework.md +12 -0
- package/pipeline/skills/shared/external/ios-networking/references/urlsession-patterns.md +17 -0
- package/pipeline/skills/shared/external/ios-security/references/app-review-guidelines.md +8 -0
- package/pipeline/skills/shared/external/ios-security/references/cryptokit-advanced.md +14 -0
- package/pipeline/skills/shared/external/ios-security/references/file-storage-patterns.md +8 -0
- package/pipeline/skills/shared/external/ios-security/references/privacy-manifest.md +9 -0
- package/pipeline/skills/shared/external/ios-sf-symbols/references/effects-and-custom-symbols.md +9 -0
- package/pipeline/skills/shared/external/ios-simulator/references/simctl-commands.md +13 -0
- package/pipeline/skills/shared/external/kotlin-coroutines-expert/references/patterns.md +8 -0
- package/pipeline/skills/shared/external/live-activities/references/activitykit-patterns.md +21 -0
- package/pipeline/skills/shared/external/localization-reuse-map/reference/format-and-output.md +9 -0
- package/pipeline/skills/shared/external/localization-reuse-map/reference/sources-and-recipes.md +12 -0
- package/pipeline/skills/shared/external/mapkit-location/references/mapkit-corelocation-patterns.md +16 -0
- package/pipeline/skills/shared/external/mapkit-location/references/mapkit-patterns.md +21 -0
- package/pipeline/skills/shared/external/metrickit-diagnostics/references/metrickit-patterns.md +10 -0
- package/pipeline/skills/shared/external/musickit-audio/references/musickit-patterns.md +9 -0
- package/pipeline/skills/shared/external/natural-language/references/translation-patterns.md +12 -0
- package/pipeline/skills/shared/external/nodejs-backend-patterns/references/runtime-patterns.md +11 -0
- package/pipeline/skills/shared/external/passkit-wallet/references/wallet-passes.md +11 -0
- package/pipeline/skills/shared/external/pdfkit/references/pdfkit-patterns.md +18 -0
- package/pipeline/skills/shared/external/pencilkit-drawing/references/pencilkit-patterns.md +11 -0
- package/pipeline/skills/shared/external/permissionkit/references/permissionkit-patterns.md +11 -0
- package/pipeline/skills/shared/external/photos-camera-media/references/av-playback.md +15 -0
- package/pipeline/skills/shared/external/photos-camera-media/references/camera-capture.md +14 -0
- package/pipeline/skills/shared/external/photos-camera-media/references/image-loading-caching.md +14 -0
- package/pipeline/skills/shared/external/photos-camera-media/references/photokit-patterns.md +14 -0
- package/pipeline/skills/shared/external/push-notifications/references/notification-patterns.md +14 -0
- package/pipeline/skills/shared/external/push-notifications/references/rich-notifications.md +10 -0
- package/pipeline/skills/shared/external/realitykit-ar/references/realitykit-patterns.md +12 -0
- package/pipeline/skills/shared/external/retrofit-networking/references/patterns.md +14 -0
- package/pipeline/skills/shared/external/room-database/references/patterns.md +16 -0
- package/pipeline/skills/shared/external/shareplay-activities/references/shareplay-patterns.md +10 -0
- package/pipeline/skills/shared/external/speech-recognition/references/speechanalyzer-patterns.md +10 -0
- package/pipeline/skills/shared/external/spm-build-analysis/references/build-optimization-sources.md +14 -0
- package/pipeline/skills/shared/external/spm-build-analysis/references/spm-analysis-checks.md +19 -0
- package/pipeline/skills/shared/external/storekit/references/core-patterns.md +13 -0
- package/pipeline/skills/shared/external/storekit/references/storekit-advanced.md +31 -0
- package/pipeline/skills/shared/external/swift-api-design-guidelines/references/argument-labels-and-parameters.md +8 -0
- package/pipeline/skills/shared/external/swift-api-design-guidelines/references/conventions-and-special-rules.md +9 -0
- package/pipeline/skills/shared/external/swift-api-design-guidelines/references/naming-and-clarity.md +10 -0
- package/pipeline/skills/shared/external/swift-api-design-guidelines/references/side-effects-and-mutating-pairs.md +8 -0
- package/pipeline/skills/shared/external/swift-charts/references/charts-patterns.md +24 -0
- package/pipeline/skills/shared/external/swift-concurrency/references/bridging-interop.md +8 -0
- package/pipeline/skills/shared/external/swift-concurrency/references/concurrency-patterns.md +14 -0
- package/pipeline/skills/shared/external/swift-concurrency/references/swiftui-concurrency.md +12 -0
- package/pipeline/skills/shared/external/swift-concurrency/references/synchronization-primitives.md +10 -0
- package/pipeline/skills/shared/external/swift-concurrency-expert/references/swift-6-2-concurrency.md +8 -0
- package/pipeline/skills/shared/external/swift-concurrency-pro/references/actors.md +10 -0
- package/pipeline/skills/shared/external/swift-concurrency-pro/references/cancellation.md +7 -0
- package/pipeline/skills/shared/external/swift-concurrency-pro/references/interop.md +10 -0
- package/pipeline/skills/shared/external/swift-concurrency-pro/references/new-features.md +11 -0
- package/pipeline/skills/shared/external/swift-concurrency-pro/references/structured.md +9 -0
- package/pipeline/skills/shared/external/swift-concurrency-pro/references/testing.md +13 -0
- package/pipeline/skills/shared/external/swift-language/references/swift-attributes-interop.md +7 -0
- package/pipeline/skills/shared/external/swift-language/references/swift-patterns-extended.md +14 -0
- package/pipeline/skills/shared/external/swift-security/references/biometric-authentication.md +16 -0
- package/pipeline/skills/shared/external/swift-security/references/certificate-trust.md +17 -0
- package/pipeline/skills/shared/external/swift-security/references/common-anti-patterns.md +19 -0
- package/pipeline/skills/shared/external/swift-security/references/compliance-owasp-mapping.md +16 -0
- package/pipeline/skills/shared/external/swift-security/references/credential-storage-patterns.md +19 -0
- package/pipeline/skills/shared/external/swift-security/references/cryptokit-public-key.md +18 -0
- package/pipeline/skills/shared/external/swift-security/references/cryptokit-symmetric.md +16 -0
- package/pipeline/skills/shared/external/swift-security/references/keychain-access-control.md +17 -0
- package/pipeline/skills/shared/external/swift-security/references/keychain-fundamentals.md +17 -0
- package/pipeline/skills/shared/external/swift-security/references/keychain-item-classes.md +17 -0
- package/pipeline/skills/shared/external/swift-security/references/keychain-sharing.md +18 -0
- package/pipeline/skills/shared/external/swift-security/references/migration-legacy-stores.md +21 -0
- package/pipeline/skills/shared/external/swift-security/references/secure-enclave.md +16 -0
- package/pipeline/skills/shared/external/swift-security/references/testing-security-code.md +16 -0
- package/pipeline/skills/shared/external/swift-testing/references/testing-advanced.md +9 -0
- package/pipeline/skills/shared/external/swift-testing/references/testing-patterns.md +24 -0
- package/pipeline/skills/shared/external/swift-testing-pro/references/async-tests.md +9 -0
- package/pipeline/skills/shared/external/swift-testing-pro/references/new-features.md +11 -0
- package/pipeline/skills/shared/external/swift-testing-pro/references/writing-better-tests.md +13 -0
- package/pipeline/skills/shared/external/swiftdata/references/core-data-coexistence.md +8 -0
- package/pipeline/skills/shared/external/swiftdata/references/swiftdata-advanced.md +17 -0
- package/pipeline/skills/shared/external/swiftdata/references/swiftdata-queries.md +12 -0
- package/pipeline/skills/shared/external/swiftlint/references/adoption-and-configuration.md +11 -0
- package/pipeline/skills/shared/external/swiftlint/references/custom-rules-and-analyze.md +7 -0
- package/pipeline/skills/shared/external/swiftlint/references/plugins-run-scripts-and-integrations.md +13 -0
- package/pipeline/skills/shared/external/swiftlint/references/rule-reference.md +24 -0
- package/pipeline/skills/shared/external/swiftlint/references/rules-suppressions-and-baselines.md +12 -0
- package/pipeline/skills/shared/external/swiftui-animation/references/animation-advanced.md +15 -0
- package/pipeline/skills/shared/external/swiftui-animation/references/core-animation-bridge.md +15 -0
- package/pipeline/skills/shared/external/swiftui-animation/references/scroll-effects.md +12 -0
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/accessibility-patterns.md +11 -0
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/animation-advanced.md +7 -0
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/animation-basics.md +13 -0
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/animation-transitions.md +9 -0
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/charts-accessibility.md +9 -0
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/charts.md +17 -0
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/image-optimization.md +9 -0
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/latest-apis.md +10 -0
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/layout-best-practices.md +12 -0
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/list-patterns.md +12 -0
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/macos-scenes.md +13 -0
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/macos-views.md +12 -0
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/macos-window-styling.md +12 -0
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/performance-patterns.md +7 -0
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/scroll-patterns.md +9 -0
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/sheet-navigation-patterns.md +10 -0
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/state-management.md +18 -0
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/view-structure.md +16 -0
- package/pipeline/skills/shared/external/swiftui-gestures/references/gesture-patterns.md +11 -0
- package/pipeline/skills/shared/external/swiftui-layout-components/references/form.md +8 -0
- package/pipeline/skills/shared/external/swiftui-layout-components/references/grids.md +14 -0
- package/pipeline/skills/shared/external/swiftui-layout-components/references/scrollview.md +9 -0
- package/pipeline/skills/shared/external/swiftui-liquid-glass/references/liquid-glass.md +22 -0
- package/pipeline/skills/shared/external/swiftui-liquid-glass/references/uikit-glass.md +14 -0
- package/pipeline/skills/shared/external/swiftui-navigation/references/deeplinks.md +10 -0
- package/pipeline/skills/shared/external/swiftui-navigation/references/navigationstack.md +10 -0
- package/pipeline/skills/shared/external/swiftui-navigation/references/sheets.md +13 -0
- package/pipeline/skills/shared/external/swiftui-navigation/references/tabview.md +10 -0
- package/pipeline/skills/shared/external/swiftui-patterns/references/architecture-patterns.md +14 -0
- package/pipeline/skills/shared/external/swiftui-patterns/references/deprecated-migration.md +30 -0
- package/pipeline/skills/shared/external/swiftui-patterns/references/platform-and-sharing.md +16 -0
- package/pipeline/skills/shared/external/swiftui-performance/references/demystify-swiftui-performance-wwdc23.md +11 -0
- package/pipeline/skills/shared/external/swiftui-performance/references/optimizing-swiftui-performance-instruments.md +11 -0
- package/pipeline/skills/shared/external/swiftui-performance/references/understanding-hangs-in-your-app.md +10 -0
- package/pipeline/skills/shared/external/swiftui-performance-audit/references/code-smells.md +8 -0
- package/pipeline/skills/shared/external/swiftui-ui-patterns/references/app-wiring.md +12 -0
- package/pipeline/skills/shared/external/swiftui-ui-patterns/references/menu-bar.md +10 -0
- package/pipeline/skills/shared/external/swiftui-ui-patterns/references/navigationstack.md +11 -0
- package/pipeline/skills/shared/external/swiftui-ui-patterns/references/scroll-reveal.md +12 -0
- package/pipeline/skills/shared/external/swiftui-ui-patterns/references/sheets.md +14 -0
- package/pipeline/skills/shared/external/swiftui-ui-patterns/references/tabview.md +10 -0
- package/pipeline/skills/shared/external/swiftui-uikit-interop/references/hosting-migration.md +10 -0
- package/pipeline/skills/shared/external/swiftui-uikit-interop/references/representable-recipes.md +13 -0
- package/pipeline/skills/shared/external/swiftui-view-refactor/references/mv-patterns.md +12 -0
- package/pipeline/skills/shared/external/swiftui-webkit/references/loading-and-observation.md +8 -0
- package/pipeline/skills/shared/external/swiftui-webkit/references/navigation-and-javascript.md +8 -0
- package/pipeline/skills/shared/external/tipkit/references/tipkit-patterns.md +14 -0
- package/pipeline/skills/shared/external/vision-framework/references/vision-requests.md +17 -0
- package/pipeline/skills/shared/external/vision-framework/references/visionkit-scanner.md +11 -0
- package/pipeline/skills/shared/external/weatherkit/references/weatherkit-patterns.md +11 -0
- package/pipeline/skills/shared/external/widgetkit/references/widgetkit-advanced.md +27 -0
- package/pipeline/skills/shared/external/xcode-build-fixer/references/build-settings-best-practices.md +9 -0
- package/pipeline/skills/shared/external/xcode-build-fixer/references/fix-patterns.md +7 -0
- package/pipeline/skills/shared/external/xcode-build-orchestrator/references/build-settings-best-practices.md +9 -0
- package/pipeline/skills/shared/external/xcode-compilation-analyzer/references/build-optimization-sources.md +14 -0
- package/pipeline/skills/shared/external/xcode-compilation-analyzer/references/code-compilation-checks.md +8 -0
- package/pipeline/skills/shared/external/xcode-project-analyzer/references/build-optimization-sources.md +14 -0
- package/pipeline/skills/shared/external/xcode-project-analyzer/references/build-settings-best-practices.md +9 -0
- package/pipeline/skills/shared/external/xcode-project-analyzer/references/project-audit-checks.md +13 -0
- package/pipeline/skills/skills-index.md +2 -1
|
@@ -33,7 +33,7 @@ Run all steps automatically:
|
|
|
33
33
|
```
|
|
34
34
|
Step 0: DOCTOR node $HOME/.claude/scripts/doctor.mjs - exit 2 or 4 STOPS the sync
|
|
35
35
|
Step 1: DETECT Compare timestamps, find stale targets
|
|
36
|
-
Step 2: COPILOT Claude Code -> Copilot CLI (instructions +
|
|
36
|
+
Step 2: COPILOT Claude Code -> Copilot CLI (instructions + 70 sub-command skills)
|
|
37
37
|
Step 2b: CODEX Claude Code -> Codex CLI (1 router skill + sub-command specs as refs + agent TOML)
|
|
38
38
|
Step 3: REPO Claude Code -> pipeline repo (genericized, personal data scrub)
|
|
39
39
|
Step 3d: DEV-TOOLKIT Companion MCP server -> detect movement, ship gates, commit + publish
|
|
@@ -229,14 +229,14 @@ When invoked with the `release` argument:
|
|
|
229
229
|
|-------------|-------------|
|
|
230
230
|
| `~/.claude/commands/multi-agent/{cmd}/SKILL.md` | `~/.copilot/skills/multi-agent-{cmd}/SKILL.md` |
|
|
231
231
|
|
|
232
|
-
**
|
|
232
|
+
**70 commands are synced** (canonical inventory - must match `cross-cli-contract.md` section 1; drift = contract violation):
|
|
233
233
|
|
|
234
234
|
```
|
|
235
235
|
analysis, analysis-jira, analysis-resolve, autopilot, autopilot-off,
|
|
236
236
|
autopilot-on, autopilot-status, bug-bash, build-optimize, channels, complaint-analysis,
|
|
237
237
|
create-jira, design-check, diff-explain, doctor, estimate, feedback, forget,
|
|
238
238
|
garbage-collect, graph, help, ios-coding-standard, issue, jira, kill,
|
|
239
|
-
language, log, manual-test, model, office-off, office-on, office-status, postmortem, prune-logs,
|
|
239
|
+
language, log, manual-test, model, office-off, office-on, office-pair, office-status, postmortem, prune-logs,
|
|
240
240
|
prune-prompts, purge, refactor, research, resume, review,
|
|
241
241
|
review-analysis, review-issue, review-jira, route-off, route-on,
|
|
242
242
|
route-status, routines, save, scaffold, scan, scenario-audit, search,
|
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
# AlarmKit patterns
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Contents](#contents)
|
|
5
|
+
- [Full alarm flow with intents](#full-alarm-flow-with-intents)
|
|
6
|
+
- [Full timer flow](#full-timer-flow)
|
|
7
|
+
- [Authorization manager](#authorization-manager)
|
|
8
|
+
- [State store with async sequences](#state-store-with-async-sequences)
|
|
9
|
+
- [Widget extension for countdown and paused UI](#widget-extension-for-countdown-and-paused-ui)
|
|
10
|
+
- [Recurrence](#recurrence)
|
|
11
|
+
- [Snooze and custom secondary actions](#snooze-and-custom-secondary-actions)
|
|
12
|
+
- [Info.plist](#infoplist)
|
|
13
|
+
- [Error handling](#error-handling)
|
|
14
|
+
- [Apple documentation](#apple-documentation)
|
|
15
|
+
<!-- /toc -->
|
|
16
|
+
|
|
3
17
|
Longer, end-to-end examples. Everything here targets iOS 26 and iPadOS 26 with
|
|
4
18
|
Swift 6.3. Code that uses the stopButton-free
|
|
5
19
|
`AlarmPresentation.Alert(title:secondaryButton:secondaryButtonBehavior:)`
|
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# Android Clean Architecture -- Reference Patterns
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Contents](#contents)
|
|
5
|
+
- [Feature api/impl Split](#feature-apiimpl-split)
|
|
6
|
+
- [Cross-Module Navigation Graph Aggregation](#cross-module-navigation-graph-aggregation)
|
|
7
|
+
<!-- /toc -->
|
|
8
|
+
|
|
3
9
|
Full code for the patterns summarized in `SKILL.md`. Load the section you need
|
|
4
10
|
when implementing that specific structure.
|
|
5
11
|
|
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# Android Build Quality Gates - Patterns
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Contents](#contents)
|
|
5
|
+
- [Layer-dependency gate](#layer-dependency-gate)
|
|
6
|
+
- [Coverage floor with Kover](#coverage-floor-with-kover)
|
|
7
|
+
- [Compose-stability gate](#compose-stability-gate)
|
|
8
|
+
- [Lint on diff](#lint-on-diff)
|
|
9
|
+
- [Screenshot validation task](#screenshot-validation-task)
|
|
10
|
+
- [Wiring gates into check](#wiring-gates-into-check)
|
|
11
|
+
<!-- /toc -->
|
|
12
|
+
|
|
3
13
|
Full, copy-ready code for the gates summarized in
|
|
4
14
|
[../SKILL.md](../SKILL.md). Each section mirrors a heading there. Adapt names to
|
|
5
15
|
the project's module conventions; nothing here hardcodes a product.
|
|
@@ -1,5 +1,16 @@
|
|
|
1
1
|
# Android DataStore Patterns
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Contents](#contents)
|
|
5
|
+
- [Preferences DataStore](#preferences-datastore)
|
|
6
|
+
- [Typed DataStore with a Serializer](#typed-datastore-with-a-serializer)
|
|
7
|
+
- [Encrypted Typed DataStore](#encrypted-typed-datastore)
|
|
8
|
+
- [Migrating from SharedPreferences](#migrating-from-sharedpreferences)
|
|
9
|
+
- [Versioned Data Migrations](#versioned-data-migrations)
|
|
10
|
+
- [Reading and Writing as Flow](#reading-and-writing-as-flow)
|
|
11
|
+
- [Testing](#testing)
|
|
12
|
+
<!-- /toc -->
|
|
13
|
+
|
|
3
14
|
Full code examples backing the guidance in `SKILL.md`. Headings mirror the
|
|
4
15
|
SKILL.md sections. Package, class, and key names are placeholders; adapt them.
|
|
5
16
|
|
package/pipeline/skills/shared/external/android-design-tokens-codegen/references/patterns.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# Android Design Tokens Codegen - Patterns
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Task wrapper](#task-wrapper)
|
|
5
|
+
- [preBuild wiring](#prebuild-wiring)
|
|
6
|
+
- [Check mode](#check-mode)
|
|
7
|
+
- [Caching](#caching)
|
|
8
|
+
- [Generated shapes](#generated-shapes)
|
|
9
|
+
<!-- /toc -->
|
|
10
|
+
|
|
3
11
|
Copy-ready Gradle and Kotlin for the schema-to-typed-code pipeline. Each heading
|
|
4
12
|
mirrors a section in `SKILL.md`. All input is a local JSON schema; all output is
|
|
5
13
|
generated Kotlin under the build directory. Names are illustrative and generic.
|
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# Android MVI BaseViewModel Patterns
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Contents](#contents)
|
|
5
|
+
- [Assembled BaseViewModel](#assembled-baseviewmodel)
|
|
6
|
+
- [MVI contracts for a screen](#mvi-contracts-for-a-screen)
|
|
7
|
+
- [A concrete ViewModel](#a-concrete-viewmodel)
|
|
8
|
+
- [Lifecycle-aware event collector](#lifecycle-aware-event-collector)
|
|
9
|
+
- [Stateless screen composable](#stateless-screen-composable)
|
|
10
|
+
- [Testing the ViewModel](#testing-the-viewmodel)
|
|
11
|
+
<!-- /toc -->
|
|
12
|
+
|
|
3
13
|
Full code examples backing the guidance in `SKILL.md`. Load this file when you
|
|
4
14
|
need a complete implementation to adapt. Headings mirror the SKILL.md sections.
|
|
5
15
|
|
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# Android Performance Patterns
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Contents](#contents)
|
|
5
|
+
- [Baseline Profiles](#baseline-profiles)
|
|
6
|
+
- [Compose Stability](#compose-stability)
|
|
7
|
+
- [Recomposition Debugging](#recomposition-debugging)
|
|
8
|
+
- [Lazy Layout Performance](#lazy-layout-performance)
|
|
9
|
+
- [R8 Optimization](#r8-optimization)
|
|
10
|
+
- [Memory Leak Detection](#memory-leak-detection)
|
|
11
|
+
- [Startup Optimization](#startup-optimization)
|
|
12
|
+
- [Image Loading with Coil](#image-loading-with-coil)
|
|
13
|
+
- [General Performance Patterns](#general-performance-patterns)
|
|
14
|
+
<!-- /toc -->
|
|
15
|
+
|
|
3
16
|
Full code examples for the Android Performance skill. Each section mirrors a
|
|
4
17
|
heading in `SKILL.md`. Load the section named in the guide when implementing or
|
|
5
18
|
reviewing that area.
|
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
# Android Security -- Reference Patterns
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Contents](#contents)
|
|
5
|
+
- [Secure Data Storage](#secure-data-storage)
|
|
6
|
+
- [Encrypted DataStore](#encrypted-datastore)
|
|
7
|
+
- [Database Key Hierarchy](#database-key-hierarchy)
|
|
8
|
+
- [Build-Type Security Gating](#build-type-security-gating)
|
|
9
|
+
- [Biometric Authentication](#biometric-authentication)
|
|
10
|
+
- [Certificate Pinning](#certificate-pinning)
|
|
11
|
+
- [API Key Protection](#api-key-protection)
|
|
12
|
+
- [R8 Obfuscation](#r8-obfuscation)
|
|
13
|
+
- [Play Integrity API](#play-integrity-api)
|
|
14
|
+
- [Root Detection](#root-detection)
|
|
15
|
+
- [Secure Network Communication](#secure-network-communication)
|
|
16
|
+
- [Secure Coding Patterns](#secure-coding-patterns)
|
|
17
|
+
<!-- /toc -->
|
|
18
|
+
|
|
3
19
|
Full code for the patterns summarized in `SKILL.md`. Load the section you need
|
|
4
20
|
when implementing that specific security feature.
|
|
5
21
|
|
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# API contract details
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Contents](#contents)
|
|
5
|
+
- [Evolving a contract](#evolving-a-contract)
|
|
6
|
+
- [Pagination](#pagination)
|
|
7
|
+
- [Idempotency for retried writes](#idempotency-for-retried-writes)
|
|
8
|
+
- [One error shape everywhere](#one-error-shape-everywhere)
|
|
9
|
+
- [Webhooks done properly](#webhooks-done-properly)
|
|
10
|
+
<!-- /toc -->
|
|
11
|
+
|
|
3
12
|
Versioning rules and worked examples for the pagination, idempotency, error-shape and webhook rules summarised in SKILL.md.
|
|
4
13
|
|
|
5
14
|
## Contents
|
package/pipeline/skills/shared/external/api-security-best-practices/references/abuse-controls.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Abuse Controls
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Contents](#contents)
|
|
5
|
+
- [1. Layers of limits](#1-layers-of-limits)
|
|
6
|
+
- [2. Choosing a rate limit algorithm](#2-choosing-a-rate-limit-algorithm)
|
|
7
|
+
- [3. Keys: what to limit by](#3-keys-what-to-limit-by)
|
|
8
|
+
- [4. A shared-store limiter](#4-a-shared-store-limiter)
|
|
9
|
+
- [5. Telling clients about limits](#5-telling-clients-about-limits)
|
|
10
|
+
- [6. Size, time and cost limits](#6-size-time-and-cost-limits)
|
|
11
|
+
- [7. Protecting business flows](#7-protecting-business-flows)
|
|
12
|
+
- [8. Operating the limits](#8-operating-the-limits)
|
|
13
|
+
<!-- /toc -->
|
|
14
|
+
|
|
3
15
|
Limits that keep one caller, script or bug from exhausting the service or its
|
|
4
16
|
budget. Covers OWASP API4 (unrestricted resource consumption) and API6
|
|
5
17
|
(unrestricted access to sensitive business flows).
|
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# Identity and Access
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Contents](#contents)
|
|
5
|
+
- [1. Choosing a credential type](#1-choosing-a-credential-type)
|
|
6
|
+
- [2. Validating JWT access tokens](#2-validating-jwt-access-tokens)
|
|
7
|
+
- [3. Refresh tokens and sessions](#3-refresh-tokens-and-sessions)
|
|
8
|
+
- [4. API keys for machine clients](#4-api-keys-for-machine-clients)
|
|
9
|
+
- [5. Service-to-service identity](#5-service-to-service-identity)
|
|
10
|
+
- [6. Authorization models](#6-authorization-models)
|
|
11
|
+
- [7. Enforcing authorization in code](#7-enforcing-authorization-in-code)
|
|
12
|
+
- [8. Credential endpoints](#8-credential-endpoints)
|
|
13
|
+
- [9. Scoping a lookup by principal](#9-scoping-a-lookup-by-principal)
|
|
14
|
+
<!-- /toc -->
|
|
15
|
+
|
|
3
16
|
How a request proves who it is, and how the server decides what that identity
|
|
4
17
|
may do. Examples use TypeScript on Node with `jose` and Python with `PyJWT`;
|
|
5
18
|
the rules are the same in any stack.
|
package/pipeline/skills/shared/external/api-security-best-practices/references/request-handling.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Request Handling
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Contents](#contents)
|
|
5
|
+
- [1. Validate at the edge with a schema](#1-validate-at-the-edge-with-a-schema)
|
|
6
|
+
- [2. Writable fields only (mass assignment)](#2-writable-fields-only-mass-assignment)
|
|
7
|
+
- [3. Shape every response explicitly](#3-shape-every-response-explicitly)
|
|
8
|
+
- [4. Injection](#4-injection)
|
|
9
|
+
- [5. Files and uploads](#5-files-and-uploads)
|
|
10
|
+
- [6. Fetching user-supplied URLs (SSRF)](#6-fetching-user-supplied-urls-ssrf)
|
|
11
|
+
- [7. Errors that do not leak](#7-errors-that-do-not-leak)
|
|
12
|
+
- [8. Consuming third-party APIs](#8-consuming-third-party-apis)
|
|
13
|
+
<!-- /toc -->
|
|
14
|
+
|
|
3
15
|
Everything that crosses the boundary is untrusted until a schema says
|
|
4
16
|
otherwise: body, query, path, headers, cookies, uploaded files, and responses
|
|
5
17
|
from other services.
|
package/pipeline/skills/shared/external/app-clips/references/data-handoff-notifications-location.md
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# Data handoff, notifications and location
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Handing data to the full app](#handing-data-to-the-full-app)
|
|
5
|
+
- [Keychain](#keychain)
|
|
6
|
+
- [Sign in with Apple](#sign-in-with-apple)
|
|
7
|
+
- [Ephemeral notifications](#ephemeral-notifications)
|
|
8
|
+
- [Location confirmation](#location-confirmation)
|
|
9
|
+
- [Lifecycle and short-lived state](#lifecycle-and-short-lived-state)
|
|
10
|
+
<!-- /toc -->
|
|
11
|
+
|
|
3
12
|
Moving state to the full app, signing people in once, notifying them within
|
|
4
13
|
the clip's window, and proving they are where the code is. Summary in
|
|
5
14
|
`../SKILL.md`.
|
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# Routing and experiences
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Handling the invocation URL](#handling-the-invocation-url)
|
|
5
|
+
- [App Store Connect experiences](#app-store-connect-experiences)
|
|
6
|
+
- [Invocation sources](#invocation-sources)
|
|
7
|
+
- [Smart App Banner](#smart-app-banner)
|
|
8
|
+
- [Local testing](#local-testing)
|
|
9
|
+
<!-- /toc -->
|
|
10
|
+
|
|
3
11
|
How an App Clip learns what to show, how App Store Connect maps URLs to
|
|
4
12
|
experiences, which sources can launch a clip, and how to test it. Summary in
|
|
5
13
|
`../SKILL.md`.
|
package/pipeline/skills/shared/external/app-clips/references/size-capabilities-and-promotion.md
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# Size, capabilities and promotion
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Feasibility review outline](#feasibility-review-outline)
|
|
5
|
+
- [Size limits](#size-limits)
|
|
6
|
+
- [Background Assets](#background-assets)
|
|
7
|
+
- [Promoting the full app with SKOverlay](#promoting-the-full-app-with-skoverlay)
|
|
8
|
+
- [What the clip can use](#what-the-clip-can-use)
|
|
9
|
+
- [What provides no functionality](#what-provides-no-functionality)
|
|
10
|
+
- [Further restrictions](#further-restrictions)
|
|
11
|
+
<!-- /toc -->
|
|
12
|
+
|
|
3
13
|
What fits in an App Clip, what the platform withholds, and how to offer the
|
|
4
14
|
full app without getting in the way. Summary in `../SKILL.md`.
|
|
5
15
|
|
|
@@ -1,5 +1,26 @@
|
|
|
1
1
|
# App Intents: advanced guide
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Contents](#contents)
|
|
5
|
+
- [Parameter initializers](#parameter-initializers)
|
|
6
|
+
- [Entity queries](#entity-queries)
|
|
7
|
+
- [EntityPropertyQuery: filter and sort](#entitypropertyquery-filter-and-sort)
|
|
8
|
+
- [Controls](#controls)
|
|
9
|
+
- [Snippets](#snippets)
|
|
10
|
+
- [Visual Intelligence](#visual-intelligence)
|
|
11
|
+
- [Assistant schemas (iOS 18+)](#assistant-schemas-ios-18)
|
|
12
|
+
- [Focus filters](#focus-filters)
|
|
13
|
+
- [Moving off SiriKit](#moving-off-sirikit)
|
|
14
|
+
- [Errors and dialogs](#errors-and-dialogs)
|
|
15
|
+
- [Confirmation](#confirmation)
|
|
16
|
+
- [Authentication](#authentication)
|
|
17
|
+
- [URL representations (iOS 18+)](#url-representations-ios-18)
|
|
18
|
+
- [Spotlight](#spotlight)
|
|
19
|
+
- [Visible content for Siri (iOS 26+)](#visible-content-for-siri-ios-26)
|
|
20
|
+
- [Conditional parameter summaries](#conditional-parameter-summaries)
|
|
21
|
+
- [Core Spotlight without App Intents](#core-spotlight-without-app-intents)
|
|
22
|
+
<!-- /toc -->
|
|
23
|
+
|
|
3
24
|
## Contents
|
|
4
25
|
|
|
5
26
|
- [Parameter initializers](#parameter-initializers)
|
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# Keyword Research Methodology
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [What App Store search reads](#what-app-store-search-reads)
|
|
5
|
+
- [Research process](#research-process)
|
|
6
|
+
- [Scoring](#scoring)
|
|
7
|
+
- [Filling the slots](#filling-the-slots)
|
|
8
|
+
- [Seasonal rotation](#seasonal-rotation)
|
|
9
|
+
- [Before and after](#before-and-after)
|
|
10
|
+
<!-- /toc -->
|
|
11
|
+
|
|
3
12
|
## What App Store search reads
|
|
4
13
|
|
|
5
14
|
Apple documents two kinds of search signal: text relevance from the name,
|
package/pipeline/skills/shared/external/app-store-optimization/references/product-page-variants.md
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# Product Page Variants
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Custom Product Pages](#custom-product-pages)
|
|
5
|
+
- [Product Page Optimization tests](#product-page-optimization-tests)
|
|
6
|
+
- [In-App Event configuration](#in-app-event-configuration)
|
|
7
|
+
- [Writing screenshot captions](#writing-screenshot-captions)
|
|
8
|
+
<!-- /toc -->
|
|
9
|
+
|
|
3
10
|
Limits below are App Store Connect values as Apple's documentation stated them
|
|
4
11
|
at the time of writing; confirm them in App Store Connect Help before quoting.
|
|
5
12
|
|
|
@@ -326,8 +326,8 @@ time.
|
|
|
326
326
|
- Name and subtitle: 30 characters each. The subtitle is a short value statement.
|
|
327
327
|
A bare category word such as "Photo Editor" is likely rejected; so are
|
|
328
328
|
competitor or trademarked terms and prices. The name must be unique.
|
|
329
|
-
- Screenshots: 1 to 10 per required platform and localization.
|
|
330
|
-
|
|
329
|
+
- Screenshots: 1 to 10 per required platform and localization. The
|
|
330
|
+
6.9-inch iPhone set is the primary one; the 6.5-inch set is required only
|
|
331
331
|
when there is no 6.9-inch set, and smaller iPhones get scaled images. Apps that
|
|
332
332
|
run on iPad need 13-inch iPad screenshots; smaller iPads are scaled.
|
|
333
333
|
- Screenshot content: the real UI; never show a feature the build lacks. Captions and
|
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# Privacy Manifest (PrivacyInfo.xcprivacy)
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [When Required](#when-required)
|
|
5
|
+
- [Structure](#structure)
|
|
6
|
+
- [Required API Reason Codes](#required-api-reason-codes)
|
|
7
|
+
- [Keys Reference](#keys-reference)
|
|
8
|
+
- [Third-Party SDK Manifests](#third-party-sdk-manifests)
|
|
9
|
+
- [Collected Data Types Declaration](#collected-data-types-declaration)
|
|
10
|
+
- [Sources To Re-Check](#sources-to-re-check)
|
|
11
|
+
<!-- /toc -->
|
|
12
|
+
|
|
3
13
|
## When Required
|
|
4
14
|
|
|
5
15
|
A bundle needs a privacy manifest when its code calls an API in one of the
|
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# Review Checklists
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [App Review Information Checklist](#app-review-information-checklist)
|
|
5
|
+
- [Privacy Manifest Checklist](#privacy-manifest-checklist)
|
|
6
|
+
- [In-App Purchase Checklist](#in-app-purchase-checklist)
|
|
7
|
+
- [Screenshot and App Preview Checklist](#screenshot-and-app-preview-checklist)
|
|
8
|
+
- [HIG Compliance Checklist](#hig-compliance-checklist)
|
|
9
|
+
- [Pre-Submission Checklist](#pre-submission-checklist)
|
|
10
|
+
<!-- /toc -->
|
|
11
|
+
|
|
3
12
|
Working lists for a submission audit. Tick each line against the build that
|
|
4
13
|
will actually be uploaded, not against a debug build.
|
|
5
14
|
|
|
@@ -41,7 +50,7 @@ will actually be uploaded, not against a debug build.
|
|
|
41
50
|
|
|
42
51
|
## Screenshot and App Preview Checklist
|
|
43
52
|
|
|
44
|
-
- [ ] 1 to 10 screenshots per platform and localization.
|
|
53
|
+
- [ ] 1 to 10 screenshots per platform and localization. The
|
|
45
54
|
6.9-inch iPhone set is the primary one.
|
|
46
55
|
- [ ] A 6.5-inch set only when there is no 6.9-inch set, or when you choose to
|
|
47
56
|
tune that fallback by hand.
|
|
@@ -1,5 +1,27 @@
|
|
|
1
1
|
# Core ML conversion with coremltools
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Contents](#contents)
|
|
5
|
+
- [Installing coremltools](#installing-coremltools)
|
|
6
|
+
- [Where Core ML sits](#where-core-ml-sits)
|
|
7
|
+
- [ML program versus neural network](#ml-program-versus-neural-network)
|
|
8
|
+
- [ct.convert parameters](#ctconvert-parameters)
|
|
9
|
+
- [From PyTorch](#from-pytorch)
|
|
10
|
+
- [From TensorFlow, scikit-learn and XGBoost](#from-tensorflow-scikit-learn-and-xgboost)
|
|
11
|
+
- [ONNX](#onnx)
|
|
12
|
+
- [Describing inputs and outputs](#describing-inputs-and-outputs)
|
|
13
|
+
- [Flexible shapes](#flexible-shapes)
|
|
14
|
+
- [Deployment targets](#deployment-targets)
|
|
15
|
+
- [Float16 or Float32](#float16-or-float32)
|
|
16
|
+
- [Which processors to allow](#which-processors-to-allow)
|
|
17
|
+
- [Keeping state between predictions](#keeping-state-between-predictions)
|
|
18
|
+
- [Several functions in one package](#several-functions-in-one-package)
|
|
19
|
+
- [Utilities](#utilities)
|
|
20
|
+
- [Controlling graph passes](#controlling-graph-passes)
|
|
21
|
+
- [Unsupported PyTorch ops](#unsupported-pytorch-ops)
|
|
22
|
+
- [Conversion mistakes](#conversion-mistakes)
|
|
23
|
+
<!-- /toc -->
|
|
24
|
+
|
|
3
25
|
This file is about the Python side: exporting from the training framework,
|
|
4
26
|
converting, choosing a deployment target and input shapes, and preparing for
|
|
5
27
|
compression. Swift runtime wiring belongs to the `coreml` skill. In a
|
package/pipeline/skills/shared/external/apple-on-device-ai/references/coreml-optimization.md
CHANGED
|
@@ -1,5 +1,22 @@
|
|
|
1
1
|
# Core ML compression and profiling
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Contents](#contents)
|
|
5
|
+
- [Picking a technique](#picking-a-technique)
|
|
6
|
+
- [Data-free weight quantization](#data-free-weight-quantization)
|
|
7
|
+
- [Palettization](#palettization)
|
|
8
|
+
- [Pruning](#pruning)
|
|
9
|
+
- [Combining techniques](#combining-techniques)
|
|
10
|
+
- [Per-op settings](#per-op-settings)
|
|
11
|
+
- [Quantization-aware training](#quantization-aware-training)
|
|
12
|
+
- [Swift at a glance](#swift-at-a-glance)
|
|
13
|
+
- [MLTensor](#mltensor)
|
|
14
|
+
- [Neural Engine habits](#neural-engine-habits)
|
|
15
|
+
- [Faster loading](#faster-loading)
|
|
16
|
+
- [Profiling](#profiling)
|
|
17
|
+
- [Compression mistakes](#compression-mistakes)
|
|
18
|
+
<!-- /toc -->
|
|
19
|
+
|
|
3
20
|
Keep the work here on the Python tooling and on profiling. Swift prediction
|
|
4
21
|
code and runtime setup belong to the `coreml` skill unless the user asked for
|
|
5
22
|
app code; the Swift section below is only a quick orientation.
|
|
@@ -1,5 +1,27 @@
|
|
|
1
1
|
# Foundation Models reference
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Contents](#contents)
|
|
5
|
+
- [What the framework is for](#what-the-framework-is-for)
|
|
6
|
+
- [SystemLanguageModel](#systemlanguagemodel)
|
|
7
|
+
- [Availability and locale](#availability-and-locale)
|
|
8
|
+
- [Use cases and guardrails](#use-cases-and-guardrails)
|
|
9
|
+
- [Sessions](#sessions)
|
|
10
|
+
- [Prewarming](#prewarming)
|
|
11
|
+
- [Text responses](#text-responses)
|
|
12
|
+
- [Generable types](#generable-types)
|
|
13
|
+
- [Tools](#tools)
|
|
14
|
+
- [Runtime schemas](#runtime-schemas)
|
|
15
|
+
- [Handling errors](#handling-errors)
|
|
16
|
+
- [Sampling and length](#sampling-and-length)
|
|
17
|
+
- [Safety](#safety)
|
|
18
|
+
- [Adapters](#adapters)
|
|
19
|
+
- [Long conversations](#long-conversations)
|
|
20
|
+
- [One coordinator for all calls](#one-coordinator-for-all-calls)
|
|
21
|
+
- [Writing prompts](#writing-prompts)
|
|
22
|
+
- [Sending feedback](#sending-feedback)
|
|
23
|
+
<!-- /toc -->
|
|
24
|
+
|
|
3
25
|
## Contents
|
|
4
26
|
|
|
5
27
|
- [What the framework is for](#what-the-framework-is-for)
|
|
@@ -1,5 +1,22 @@
|
|
|
1
1
|
# MLX Swift, llama.cpp and routing between backends
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Contents](#contents)
|
|
5
|
+
- [How MLX works](#how-mlx-works)
|
|
6
|
+
- [Loading and generating](#loading-and-generating)
|
|
7
|
+
- [Model sizes by device](#model-sizes-by-device)
|
|
8
|
+
- [Memory rules](#memory-rules)
|
|
9
|
+
- [Owning the model lifecycle](#owning-the-model-lifecycle)
|
|
10
|
+
- [Going to the background](#going-to-the-background)
|
|
11
|
+
- [llama.cpp](#llamacpp)
|
|
12
|
+
- [GGUF quant types](#gguf-quant-types)
|
|
13
|
+
- [llama.cpp or MLX Swift](#llamacpp-or-mlx-swift)
|
|
14
|
+
- [Routing across backends](#routing-across-backends)
|
|
15
|
+
- [Built-in frameworks first](#built-in-frameworks-first)
|
|
16
|
+
- [Performance habits](#performance-habits)
|
|
17
|
+
- [Checklist](#checklist)
|
|
18
|
+
<!-- /toc -->
|
|
19
|
+
|
|
3
20
|
## Contents
|
|
4
21
|
|
|
5
22
|
- [How MLX works](#how-mlx-works)
|
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# Keychain and Biometrics
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Where secrets go](#where-secrets-go)
|
|
5
|
+
- [A small token vault](#a-small-token-vault)
|
|
6
|
+
- [Biometrics with `LAContext`](#biometrics-with-lacontext)
|
|
7
|
+
- [Items that require biometrics to read](#items-that-require-biometrics-to-read)
|
|
8
|
+
- [Errors](#errors)
|
|
9
|
+
- [Apple documentation](#apple-documentation)
|
|
10
|
+
<!-- /toc -->
|
|
11
|
+
|
|
3
12
|
The minimum storage and biometric patterns that sign-in code needs. This is a
|
|
4
13
|
quick reference, not a security architecture: Keychain migration,
|
|
5
14
|
access-control policy design, CryptoKit, Secure Enclave, pinning, sharing
|
|
@@ -1,5 +1,16 @@
|
|
|
1
1
|
# Passkeys
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Before writing code](#before-writing-code)
|
|
5
|
+
- [Registering a passkey](#registering-a-passkey)
|
|
6
|
+
- [Signing in](#signing-in)
|
|
7
|
+
- [One delegate for every credential type](#one-delegate-for-every-credential-type)
|
|
8
|
+
- [Inline suggestions with AutoFill](#inline-suggestions-with-autofill)
|
|
9
|
+
- [Physical security keys](#physical-security-keys)
|
|
10
|
+
- [Failure modes](#failure-modes)
|
|
11
|
+
- [Apple documentation](#apple-documentation)
|
|
12
|
+
<!-- /toc -->
|
|
13
|
+
|
|
3
14
|
A passkey is a public/private key pair. For platform passkeys the private key
|
|
4
15
|
sits in iCloud Keychain and syncs across the person's devices; the
|
|
5
16
|
relying-party server keeps the public credential material and verifies every
|
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# AVKit patterns
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Contents](#contents)
|
|
5
|
+
- [Custom player with AVPlayerLayer](#custom-player-with-avplayerlayer)
|
|
6
|
+
- [Interstitials](#interstitials)
|
|
7
|
+
- [Background playback](#background-playback)
|
|
8
|
+
- [Errors](#errors)
|
|
9
|
+
- [Observing playback](#observing-playback)
|
|
10
|
+
- [Video frame analysis](#video-frame-analysis)
|
|
11
|
+
- [HDR](#hdr)
|
|
12
|
+
- [SwiftUI player model](#swiftui-player-model)
|
|
13
|
+
- [Wrapping AVPlayerViewController for SwiftUI](#wrapping-avplayerviewcontroller-for-swiftui)
|
|
14
|
+
<!-- /toc -->
|
|
15
|
+
|
|
3
16
|
Advanced playback recipes for iOS 26 and Swift 6.3.
|
|
4
17
|
|
|
5
18
|
## Contents
|
package/pipeline/skills/shared/external/background-processing/references/background-task-patterns.md
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# Background Task Patterns
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Debugging](#debugging)
|
|
5
|
+
- [Processing tasks in depth](#processing-tasks-in-depth)
|
|
6
|
+
- [Background URLSession details](#background-urlsession-details)
|
|
7
|
+
- [Silent push details](#silent-push-details)
|
|
8
|
+
- [SwiftUI `.backgroundTask`](#swiftui-backgroundtask)
|
|
9
|
+
- [Continued processing specifics](#continued-processing-specifics)
|
|
10
|
+
<!-- /toc -->
|
|
11
|
+
|
|
3
12
|
Deeper material for the `background-processing` skill: debugging, error codes,
|
|
4
13
|
checkpointed processing, background transfer details, silent push limits, the
|
|
5
14
|
SwiftUI modifier and continued-processing specifics.
|
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# CallKit Patterns
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [An observable call manager](#an-observable-call-manager)
|
|
5
|
+
- [Hold and mute in the delegate](#hold-and-mute-in-the-delegate)
|
|
6
|
+
- [Several calls at once](#several-calls-at-once)
|
|
7
|
+
- [Watching call state](#watching-call-state)
|
|
8
|
+
- [Filtering encrypted VoIP pushes](#filtering-encrypted-voip-pushes)
|
|
9
|
+
- [Incremental Call Directory updates](#incremental-call-directory-updates)
|
|
10
|
+
- [Testing VoIP locally](#testing-voip-locally)
|
|
11
|
+
<!-- /toc -->
|
|
12
|
+
|
|
3
13
|
Longer examples that back the `callkit-voip` skill. Read its SKILL.md first;
|
|
4
14
|
this file assumes the provider setup, push rules and audio rules described
|
|
5
15
|
there.
|
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# CloudKit Patterns
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Contents](#contents)
|
|
5
|
+
- [Incremental zone fetches](#incremental-zone-fetches)
|
|
6
|
+
- [Server change tokens](#server-change-tokens)
|
|
7
|
+
- [Sharing with `CKShare`](#sharing-with-ckshare)
|
|
8
|
+
- [`UICloudSharingController`](#uicloudsharingcontroller)
|
|
9
|
+
- [Zones](#zones)
|
|
10
|
+
- [Files with `CKAsset`](#files-with-ckasset)
|
|
11
|
+
- [Batches](#batches)
|
|
12
|
+
- [Quality of service and groups](#quality-of-service-and-groups)
|
|
13
|
+
- [Encrypted fields](#encrypted-fields)
|
|
14
|
+
- [CloudKit Dashboard](#cloudkit-dashboard)
|
|
15
|
+
- [Discovering changed zones](#discovering-changed-zones)
|
|
16
|
+
<!-- /toc -->
|
|
17
|
+
|
|
3
18
|
Lower-level operations and features behind the [skill overview](../SKILL.md):
|
|
4
19
|
incremental fetching, tokens, sharing, zones, files, batching, scheduling,
|
|
5
20
|
encryption and the Dashboard.
|
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# Jetpack Compose Components Patterns
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Contents](#contents)
|
|
5
|
+
- [Two-Layer Design Tokens](#two-layer-design-tokens)
|
|
6
|
+
- [Bridging Tokens to Material 3](#bridging-tokens-to-material-3)
|
|
7
|
+
- [Component Catalog](#component-catalog)
|
|
8
|
+
<!-- /toc -->
|
|
9
|
+
|
|
3
10
|
Full code examples backing the guidance in `SKILL.md`. Headings mirror the
|
|
4
11
|
SKILL.md sections.
|
|
5
12
|
|
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# Compose Navigation -- Reference Patterns
|
|
2
2
|
|
|
3
|
+
<!-- toc -->
|
|
4
|
+
- [Contents](#contents)
|
|
5
|
+
- [Custom NavType Type-Map](#custom-navtype-type-map)
|
|
6
|
+
- [SafeNavController](#safenavcontroller)
|
|
7
|
+
- [Navigation as a One-Shot Effect](#navigation-as-a-one-shot-effect)
|
|
8
|
+
<!-- /toc -->
|
|
9
|
+
|
|
3
10
|
Full code for the patterns summarized in `SKILL.md`. Load the section you need
|
|
4
11
|
when implementing that specific navigation feature.
|
|
5
12
|
|