Chargement de l'image...Kiro

Produit

  • À propos de Kiro
  • IDE
  • CLI
  • Web
  • Mobile
  • Crew
  • Tarification
  • Téléchargements

Pour

  • Entreprise
  • Startups
  • Étudiants

Communauté

  • Aperçu
  • Ambassadeurs
  • Discord
  • Événements
  • Powers
  • Boutique
  • Vitrine

Ressources

  • Docs
  • Blogue
  • Journal des modifications
  • FAQ
  • Signaler un bogue
  • Suggérer une idée
  • Soutien à la facturation

Réseaux sociaux

Conditions d'utilisation du siteLicencePolitique d'IA responsableMentions légalesPolitique de confidentialitéPréférences relatives aux témoins
Chargement de l'image...Kiro
  • Entreprise
  • Tarification
  • Docs
SE CONNECTERTÉLÉCHARGER
Chargement de l'image...Kiro

Pour commencer

InstallationAuthentificationVotre premier projet

Modèles

AperçuModèles disponiblesEffort de raisonnement

Fonctionnalités

Comment fonctionne Kiro
Specs
Steering
Hooks
MCP
Autorisations
Agents personnalisés
Agent Skills
Powers
Sessions cloudCompactionKiroignorePoints de contrôle et rewind
Outils intégrés
Portées de configuration

IDE 1.x

Nouveautés de la version 1.0
Configuration et premier lancement
Éditeur
Chat
Expérimental
DépannageRéférence 0.x

CLI

Nouveautés de la version 3.0
Configuration et première exécution
Interface utilisateur du terminal
Clavardage
Mode vocalMode sans interfaceACPAutocomplétion
Expérimental
Référence 2.x

Crew

Démarrage rapideInstallationFonctionnement 24/7
Chat
Agent Capabilities
Fonctionnalités
Interfaces
Applications
Créez votre première application
Référence du manifeste
Référence SDK / API
Publication et lignes directrices
ConfigurationSécuritéDépannage

Web - Aperçu

Configuration et première exécutionIdentity Center
Connectez vos dépôts
Utilisation de l'agent
Mode autonomeAutomatisationsMémoire
Sandbox

Mobile - Aperçu

Aperçu

Commandes et référence

Commandes CLICommandes à barre obliqueOutils intégrésCodes de sortieParamètres

Facturation

AperçuGestion de votre abonnementMise à niveau de votre forfaitRétrogradation de votre forfaitAnnulation de votre forfaitAchat de crédits supplémentairesGestion de vos paiementsGestion des notifications d'utilisationGestion de vos impôtsCommuniquer avec le soutien à la facturationSuppression de votre compteQuestions connexes

Entreprise

ConceptsDémarrage rapide de l'intégration
Connexion de votre fournisseur d'identité
Abonnez votre équipeGérer les abonnements
Governance
Surveillance et suivi
ParamètresMises à jour géréesFacturationIAMRégions prises en charge

Confidentialité et sécurité

AperçuProtection des donnéesRéférences de codeValidation de la conformitéSécurité de l'infrastructureAutorisations IAMPare-feu, mandataires et périmètres de donnéesPoints de terminaison VPC (AWS PrivateLink)

Guides

Aperçu
Prise en charge des langages
Apprendre en jouant

Migration

Migration depuis Q DeveloperMigration depuis VSCodeMise à niveau depuis Q CLI
  1. Docs
  2. Crew
  3. Applications
  4. Publication et lignes directrices
Afficher en Markdown

Publication et lignes directrices

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et la version anglaise originale, la version anglaise prévaudra.
Afficher en Markdown

Une fois votre application fonctionnelle en local, publiez-la dans le registre de l'App Store pour que les autres utilisateurs de Crew puissent l'installer en un clic. Cette page couvre le flux de travail de bout en bout.

1. Développer en local

Créez un répertoire d'application avec un app.json à la racine. Consultez :

  • Créez votre première application — le tour guidé de 5 minutes
  • Référence du manifeste — chaque champ app.json

Vérifiez que le manifeste est valide :

bash
kirocrew doctor # or: curl http://localhost:5476/api/apps/my-app/manifest | python3 -m json.tool

2. Tester en local

Installer depuis un chemin local

bash
# Build UI if you have one cd my-app/ui && npm install && npm run build && cd .. # Install via REST API curl -X POST http://localhost:5476/api/apps/install \ -H 'Content-Type: application/json' \ -d '{"source": "./my-app"}' # Enable it curl -X POST http://localhost:5476/api/apps/my-app/enable

Ou utilisez l'interface de l'App Store dans le tableau de bord pour installer depuis un chemin local.

Vérifier dans le tableau de bord

  1. Ouvrez le tableau de bord Crew (kirocrew token → ouvrez l'URL)
  2. Vérifiez App Store → Installed — votre application devrait apparaître
  3. Si elle a une interface utilisateur, cliquez sur l'entrée dans la barre latérale et vérifiez que la page se charge
  4. Si elle a des agents, testez-les depuis le chat : demandez à l'agent de faire quelque chose
  5. Si elle a des tâches cron, vérifiez la page Schedule — votre tâche cron devrait y être listée

Conseils de débogage

bash
# Check the app is registered curl http://localhost:5476/api/apps | python3 -m json.tool # Check the manifest is valid curl http://localhost:5476/api/apps/my-app/manifest | python3 -m json.tool # Tail gateway logs kirocrew logs -f

Itérer

bash
# Edit code vim ui/src/App.tsx # Rebuild UI cd ui && npm run build && cd .. # Update the installed app curl -X POST http://localhost:5476/api/apps/my-app/update

Pour une itération plus rapide, utilisez kirocrew app dev my-app — la passerelle recharge l'application à chaud à chaque changement de fichier.

3. Préparer la publication

Liste de vérification

Avant de soumettre au registre :

  • app.json passe la validation
  • name est en kebab-case, unique globalement, descriptif
  • version suit le semver (1.0.0)
  • displayName et description sont clairs et concis
  • author est défini
  • tags facilitent la découverte
  • permissions sont minimales — ne déclarez que ce que vous utilisez réellement
  • Le paquet UI est construit et committé (ui/dist/index.mjs)
  • Les fichiers JSON des agents sont valides
  • Les fichiers SKILL.md des Skills ont un frontmatter approprié
  • README.md explique ce que fait l'application et comment l'utiliser
  • Si vous avez setup.onInstall, testez-le sur une machine propre

Ce qui est copié au moment de l'installation

Lorsque Crew installe ou met à jour votre application, il copie l'arborescence source dans ~/.kiro/crew/apps/{name}/ avec deux mesures de protection :

  • Les liens symboliques ne sont jamais suivis. Un lien symbolique dont la cible se résout à l'intérieur de l'arborescence source de votre application est conservé comme lien symbolique; un lien symbolique se résolvant à l'extérieur est omis entièrement. Les artefacts d'exécution committés doivent être de vrais fichiers (ou des liens relatifs internes à l'arborescence).
  • Les répertoires d'entrée de build et de VCS sont exclus : node_modules, .git, __pycache__, .venv (à toute profondeur) sont retirés de la copie installée.

Servez votre interface utilisateur depuis le paquet committé ui/dist/. Rien dont votre application a besoin à l'exécution ne doit se trouver sous ces noms exclus.

Structure du dépôt

Votre application devrait vivre dans son propre dépôt git (ou un sous-répertoire d'un dépôt existant) :

MyAppRepo/ ├── app.json ├── agents/ ├── skills/ ├── ui/ │ ├── src/ │ └── dist/index.mjs ← committed build artifact ├── scripts/ │ └── install.sh ← optional; invoked by setup.onInstall in app.json └── README.md

Ressources visuelles

Icône de l'application :

  • Format : PNG avec transparence
  • Taille : minimum 256×256, rapport d'aspect carré
  • Emplacement : committez dans votre dépôt (p. ex. assets/icon/logo.png)

Captures d'écran :

  • Format : PNG ou JPG
  • Recommandé : 1200 px de large, rapport 16:9
  • Emplacement : committez dans votre dépôt
  • Maximum 5 captures d'écran par application

Images héros (16:9 recommandé, 1200×675) :

  • heroImage — thème clair
  • heroImageDark — thème sombre
  • heroImageDetail / heroImageDetailDark — bannière de la page de détail (25:6, 1200×288)

L'App Store diffuse les icônes et les images via un proxy de blob git — aucun CDN ni hébergement externe n'est nécessaire.

4. Soumettre au registre de l'App Store

Le registre de l'App Store est src/kiro_crew/apps/app-registry.json dans le dépôt Crew. Ajouter votre application signifie ouvrir une pull request.

Ajouter l'entrée du registre

json
[ { "name": "my-app", "gitUrl": "https://github.com/yourname/my-app", "branch": "main" } ]

Si votre application se trouve dans un sous-répertoire d'un dépôt plus grand :

json
{ "name": "my-app", "gitUrl": "https://github.com/yourname/monorepo", "branch": "main", "subdirectory": "apps/my-app" }

Champs de l'entrée du registre

ChampRequisDescription
nameOuiDoit correspondre au name dans votre app.json
gitUrlOuiToute URL clonable par git (https://…, git@…)
branchOuiBranche à cloner (habituellement main)
subdirectoryNonChemin dans le dépôt si app.json n'est pas à la racine
resourcesNon"gateway" (par défaut) ou "app" — voir ci-dessous
lifecycleNon"gateway" (par défaut), "app", ou "locked"
detectInstalledNonCommande shell qui se termine avec le code 0 si l'application est déjà installée (pour les applications autogérées)

Le champ repo est le raccourci historique pour gitUrl et est toujours accepté.

L'entrée du registre est intentionnellement minimale — votre app.json est la source unique de vérité. Toutes les informations d'affichage (description, captures d'écran, points forts, tags, version) sont récupérées depuis votre dépôt. Vous n'avez pas à synchroniser les métadonnées entre votre dépôt et le registre.

Soumettre une pull request

bash
cd /path/to/Crew git checkout -b add-my-app # Edit src/kiro_crew/apps/app-registry.json git add src/kiro_crew/apps/app-registry.json git commit -m "feat(apps): add my-app to registry" git push origin add-my-app # Open a PR titled "Add my-app to App Store registry"

Ce que les réviseurs vérifient

  1. app.json est valide et complet
  2. Les permissions sont raisonnables (pas d'accès inutile)
  3. Aucune traversée de chemin dans les chemins de ressources
  4. Le script d'installation (le cas échéant) est sécuritaire
  5. L'application apporte de la valeur aux utilisateurs de Crew

5. Registres externes fédérés

Les équipes peuvent héberger leurs propres registres d'applications sans nécessiter de révision par l'équipe Crew. Les utilisateurs y adhèrent en ajoutant des registres externes à leur configuration :

json
{ "registries": [ {"name": "team-a", "repo": "TeamAKirocrewAppRegistry", "branch": "main"} ] }

Le fichier d'entrée de registre à la racine du dépôt de registre reflète le format ci-dessus (un tableau d'entrées d'applications).

Modèle de confiance : l'utilisateur y adhère explicitement en ajoutant le registre à sa configuration. Le dépôt doit être accessible via git.

API de gestion (/api/apps/registries) :

MéthodeObjectif
GET /api/apps/registriesRetourne la liste actuelle des registres depuis la configuration
PUT /api/apps/registriesValide et remplace le tableau des registres

Validation des entrées : les noms de dépôt et de branche sont validés par rapport à des motifs regex stricts pour rejeter la traversée de chemin. Le dépôt Crew lui-même est bloqué.

6. Flux d'installation utilisateur

Après la fusion de votre PR :

  1. Les utilisateurs ouvrent l'App Store → l'onglet Browse, trouvent votre application
  2. Cliquent sur Install — Crew clone votre dépôt (superficiel, branche spécifique)
  3. Exécute setup.onInstall si défini
  4. Copie l'application dans ~/.kiro/crew/apps/my-app/
  5. Enregistre les agents, Skills, tâches cron via des liens symboliques
  6. L'application apparaît dans le tableau de bord

7. Mises à jour

Pousser une mise à jour :

  1. Mettez à jour le code de votre application
  2. Incrémentez version dans app.json
  3. Committez et poussez

Les utilisateurs peuvent mettre à jour via l'interface de l'App Store (bouton de rafraîchissement) ou l'API REST :

bash
curl -X POST http://localhost:5476/api/apps/my-app/update

Ceci re-clone, ré-exécute onUpdate, et ré-enregistre les ressources.

Applications autogérées

Certaines applications gèrent leur propre installation et l'enregistrement de leurs ressources. Elles s'enregistrent auprès de Crew pour la visibilité dans l'App Store, mais gèrent leur propre cycle de vie.

json
{ "name": "my-desktop-app", "repo": "MyDesktopApp", "branch": "mainline", "resources": "app", "lifecycle": "app", "detectInstalled": "test -d ~/Applications/MyDesktopApp.app" }

Applications autogérées :

  • S'affichent dans l'App Store comme « Self-managed »
  • Gèrent elles-mêmes l'installation, la mise à jour et la désinstallation
  • S'enregistrent via POST /api/apps/register à l'exécution
  • Crew ne fait que suivre les métadonnées

Compatibilité des versions

Les applications déclarent minCrewVersion dans app.json. L'installation et la mise à jour vérifient cette valeur — si la version actuelle est trop ancienne, l'opération est rejetée avec un message d'erreur clair indiquant à l'utilisateur de mettre à jour Crew d'abord.

Systèmes de build des paquets

Les applications peuvent utiliser npm (pour TypeScript/React) ou pip (pour Python) comme système de build. L'App Store clone le dépôt et exécute la commande de build appropriée.

Comment l'installation fonctionne réellement

  1. Crew crée un espace de travail à ~/.kiro/crew/app-sources/{name}/
  2. Clone le paquet à la branche spécifiée (superficiel)
  3. Exécute npm install && npm run build (JS/TS) ou pip install . (Python)
  4. setup.onInstall s'exécute après le build (pour des étapes post-build comme electron-builder)

Puisque l'étape de build standard gère la résolution des dépendances et la compilation, votre script onInstall ne devrait faire que de l'empaquetage post-build :

bash
#!/usr/bin/env bash set -euo pipefail [ -d "node_modules" ] || exit 1 # sanity check — build should have run npx electron-builder --mac --dir cp -R release/mac-arm64/MyApp.app ~/Applications/MyApp.app

Gestion des versions

  • Utilisez le semver : major.minor.patch
  • Incrémentez patch pour les corrections de bogues
  • Incrémentez minor pour les nouvelles fonctionnalités
  • Incrémentez major pour les changements avec rupture de compatibilité (schéma de configuration d'agent, interface d'outil MCP)

L'entrée du registre n'a pas de champ de version — incrémentez simplement app.json et poussez. L'App Store récupère le dernier app.json depuis votre dépôt (mis en cache 24 h, ou immédiatement lors d'un rafraîchissement par l'utilisateur).

Référence rapide

ÉtapeCommande / action
CréerCréer un répertoire d'application avec app.json
Construire l'UIcd ui && npm run build
Installer localementPOST /api/apps/install ou l'interface de l'App Store
ActiverPOST /api/apps/{name}/enable
TesterOuvrir le tableau de bord, vérifier l'UI + les agents + les tâches cron
SoumettreAjouter à app-registry.json, ouvrir une PR
Installation utilisateurApp Store → Browse → Install
Mettre à jourIncrémenter la version, pousser, les utilisateurs réinstallent

Soutien

  • Questions : ouvrez une discussion sur le dépôt GitHub de Crew
  • Bogues : ouvrez un problème GitHub
  • Demandes de fonctionnalités : idem, étiquette app-store
Page mise à jour : 11 août 2026
Référence SDK / API
Configuration