@boostecom/provider 0.0.1

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.
Files changed (70) hide show
  1. package/README.md +90 -0
  2. package/dist/index.cjs +2522 -0
  3. package/dist/index.cjs.map +1 -0
  4. package/dist/index.d.cts +848 -0
  5. package/dist/index.d.ts +848 -0
  6. package/dist/index.js +2484 -0
  7. package/dist/index.js.map +1 -0
  8. package/docs/content/README.md +337 -0
  9. package/docs/content/agent-teams.mdx +324 -0
  10. package/docs/content/api.mdx +757 -0
  11. package/docs/content/best-practices.mdx +624 -0
  12. package/docs/content/examples.mdx +675 -0
  13. package/docs/content/guide.mdx +516 -0
  14. package/docs/content/index.mdx +99 -0
  15. package/docs/content/installation.mdx +246 -0
  16. package/docs/content/skills.mdx +548 -0
  17. package/docs/content/troubleshooting.mdx +588 -0
  18. package/docs/examples/README.md +499 -0
  19. package/docs/examples/abort-signal.ts +125 -0
  20. package/docs/examples/agent-teams.ts +122 -0
  21. package/docs/examples/basic-usage.ts +73 -0
  22. package/docs/examples/check-cli.ts +51 -0
  23. package/docs/examples/conversation-history.ts +69 -0
  24. package/docs/examples/custom-config.ts +90 -0
  25. package/docs/examples/generate-object-constraints.ts +209 -0
  26. package/docs/examples/generate-object.ts +211 -0
  27. package/docs/examples/hooks-callbacks.ts +63 -0
  28. package/docs/examples/images.ts +76 -0
  29. package/docs/examples/integration-test.ts +241 -0
  30. package/docs/examples/limitations.ts +150 -0
  31. package/docs/examples/logging-custom-logger.ts +99 -0
  32. package/docs/examples/logging-default.ts +55 -0
  33. package/docs/examples/logging-disabled.ts +74 -0
  34. package/docs/examples/logging-verbose.ts +64 -0
  35. package/docs/examples/long-running-tasks.ts +179 -0
  36. package/docs/examples/message-injection.ts +210 -0
  37. package/docs/examples/mid-stream-injection.ts +126 -0
  38. package/docs/examples/run-all-examples.sh +48 -0
  39. package/docs/examples/sdk-tools-callbacks.ts +49 -0
  40. package/docs/examples/skills-discovery.ts +144 -0
  41. package/docs/examples/skills-management.ts +140 -0
  42. package/docs/examples/stream-object.ts +80 -0
  43. package/docs/examples/streaming.ts +52 -0
  44. package/docs/examples/structured-output-repro.ts +227 -0
  45. package/docs/examples/tool-management.ts +215 -0
  46. package/docs/examples/tool-streaming.ts +132 -0
  47. package/docs/examples/zod4-compatibility-test.ts +290 -0
  48. package/docs/src/claude-code-language-model.test.ts +3883 -0
  49. package/docs/src/claude-code-language-model.ts +2586 -0
  50. package/docs/src/claude-code-provider.test.ts +97 -0
  51. package/docs/src/claude-code-provider.ts +179 -0
  52. package/docs/src/convert-to-claude-code-messages.images.test.ts +104 -0
  53. package/docs/src/convert-to-claude-code-messages.test.ts +193 -0
  54. package/docs/src/convert-to-claude-code-messages.ts +419 -0
  55. package/docs/src/errors.test.ts +213 -0
  56. package/docs/src/errors.ts +216 -0
  57. package/docs/src/index.test.ts +49 -0
  58. package/docs/src/index.ts +98 -0
  59. package/docs/src/logger.integration.test.ts +164 -0
  60. package/docs/src/logger.test.ts +184 -0
  61. package/docs/src/logger.ts +65 -0
  62. package/docs/src/map-claude-code-finish-reason.test.ts +120 -0
  63. package/docs/src/map-claude-code-finish-reason.ts +60 -0
  64. package/docs/src/mcp-helpers.test.ts +71 -0
  65. package/docs/src/mcp-helpers.ts +123 -0
  66. package/docs/src/message-injection.test.ts +460 -0
  67. package/docs/src/types.ts +447 -0
  68. package/docs/src/validation.test.ts +558 -0
  69. package/docs/src/validation.ts +360 -0
  70. package/package.json +124 -0
@@ -0,0 +1,337 @@
1
+ # Documentation MDX — AI SDK Provider Claude Code
2
+
3
+ Cette documentation complete est structuree pour etre integree dans une plateforme SaaS moderne (Docusaurus, Nextra, GitBook, etc.).
4
+
5
+ ## Structure de la documentation
6
+
7
+ ### Pages principales
8
+
9
+ 1. **[index.mdx](./index.mdx)** — Page d'accueil et introduction
10
+ - Apercu du provider
11
+ - Installation rapide
12
+ - Compatibilite des versions
13
+ - Premiers pas
14
+
15
+ 2. **[installation.mdx](./installation.mdx)** — Guide d'installation detaille
16
+ - Prerequis
17
+ - Installation du CLI
18
+ - Configuration
19
+ - Environnements specifiques (Docker, CI/CD, monorepo)
20
+ - Depannage installation
21
+
22
+ 3. **[guide.mdx](./guide.mdx)** — Guide d'utilisation complet
23
+ - Utilisation basique
24
+ - Streaming
25
+ - Conversations multi-tours
26
+ - Structured outputs
27
+ - Images
28
+ - Configuration avancee
29
+ - Gestion des outils
30
+ - Erreurs et timeouts
31
+
32
+ 4. **[api.mdx](./api.mdx)** — Reference API complete
33
+ - Documentation de `claudeCode()`
34
+ - Toutes les options de `ClaudeCodeSettings`
35
+ - Types exportes
36
+ - Metadonnees et valeurs de retour
37
+
38
+ 5. **[examples.mdx](./examples.mdx)** — Exemples pratiques
39
+ - Applications web (Express, Next.js)
40
+ - Outils et scripts
41
+ - Traitement par lots
42
+ - Integration bases de donnees
43
+ - Services tiers (Slack, etc.)
44
+
45
+ 6. **[skills.mdx](./skills.mdx)** — Competences personnalisees
46
+ - Qu'est-ce qu'une Skill
47
+ - Configuration
48
+ - Creation de Skills
49
+ - Exemples de Skills utiles
50
+ - Bonnes pratiques
51
+
52
+ 7. **[troubleshooting.mdx](./troubleshooting.mdx)** — Depannage
53
+ - Problemes d'installation
54
+ - Problemes d'execution
55
+ - Structured outputs
56
+ - Outils et sessions
57
+ - Performance
58
+ - Docker et CI/CD
59
+
60
+ 8. **[best-practices.mdx](./best-practices.mdx)** — Bonnes pratiques
61
+ - Choix du modele
62
+ - Gestion du contexte
63
+ - Securite
64
+ - Performance
65
+ - Logging et monitoring
66
+ - Testing
67
+ - Production
68
+
69
+ 9. **[agent-teams.mdx](./agent-teams.mdx)** — Agent Teams
70
+ - Equipes d'agents specialises
71
+ - Configuration et coordination
72
+ - Cas d'usage pratiques
73
+ - Integration avec Skills
74
+ - Bonnes pratiques pour teams
75
+
76
+ ## Integration dans une plateforme
77
+
78
+ ### Docusaurus
79
+
80
+ ```javascript
81
+ // docusaurus.config.js
82
+ module.exports = {
83
+ // ...
84
+ presets: [
85
+ [
86
+ '@docusaurus/preset-classic',
87
+ {
88
+ docs: {
89
+ path: 'docs/content',
90
+ routeBasePath: 'docs',
91
+ sidebarPath: require.resolve('./sidebars.js'),
92
+ },
93
+ },
94
+ ],
95
+ ],
96
+ };
97
+ ```
98
+
99
+ ```javascript
100
+ // sidebars.js
101
+ module.exports = {
102
+ docs: [
103
+ {
104
+ type: 'doc',
105
+ id: 'index',
106
+ label: 'Introduction',
107
+ },
108
+ {
109
+ type: 'category',
110
+ label: 'Pour commencer',
111
+ items: ['installation', 'guide'],
112
+ },
113
+ {
114
+ type: 'category',
115
+ label: 'Reference',
116
+ items: ['api', 'examples'],
117
+ },
118
+ {
119
+ type: 'category',
120
+ label: 'Avance',
121
+ items: ['skills', 'best-practices'],
122
+ },
123
+ {
124
+ type: 'doc',
125
+ id: 'troubleshooting',
126
+ label: 'Depannage',
127
+ },
128
+ ],
129
+ };
130
+ ```
131
+
132
+ ### Nextra (Next.js)
133
+
134
+ ```javascript
135
+ // next.config.js
136
+ const withNextra = require('nextra')({
137
+ theme: 'nextra-theme-docs',
138
+ themeConfig: './theme.config.tsx',
139
+ });
140
+
141
+ module.exports = withNextra({
142
+ // ...
143
+ });
144
+ ```
145
+
146
+ ```javascript
147
+ // theme.config.tsx
148
+ export default {
149
+ logo: <span>Claude Code Provider</span>,
150
+ project: {
151
+ link: 'https://github.com/BoostEcom/ThemeCopilotAI',
152
+ },
153
+ docsRepositoryBase: 'https://github.com/BoostEcom/ThemeCopilotAI/tree/main/docs/content',
154
+ sidebar: {
155
+ defaultMenuCollapseLevel: 1,
156
+ },
157
+ // ...
158
+ };
159
+ ```
160
+
161
+ Structure pour Nextra :
162
+ ```
163
+ pages/
164
+ docs/
165
+ index.mdx
166
+ installation.mdx
167
+ guide.mdx
168
+ api.mdx
169
+ examples.mdx
170
+ skills.mdx
171
+ troubleshooting.mdx
172
+ best-practices.mdx
173
+ _meta.json
174
+ ```
175
+
176
+ ```json
177
+ // pages/docs/_meta.json
178
+ {
179
+ "index": "Introduction",
180
+ "installation": "Installation",
181
+ "guide": "Guide d'utilisation",
182
+ "api": "Reference API",
183
+ "examples": "Exemples",
184
+ "skills": "Skills",
185
+ "troubleshooting": "Depannage",
186
+ "best-practices": "Bonnes pratiques"
187
+ }
188
+ ```
189
+
190
+ ### GitBook
191
+
192
+ Importez directement les fichiers MDX dans votre espace GitBook ou utilisez la synchronisation GitHub.
193
+
194
+ ### VitePress
195
+
196
+ ```javascript
197
+ // .vitepress/config.ts
198
+ export default {
199
+ title: 'Claude Code Provider',
200
+ description: 'AI SDK Provider pour Claude Code',
201
+ themeConfig: {
202
+ nav: [
203
+ { text: 'Guide', link: '/guide' },
204
+ { text: 'API', link: '/api' },
205
+ ],
206
+ sidebar: [
207
+ {
208
+ text: 'Introduction',
209
+ items: [
210
+ { text: 'Pour commencer', link: '/index' },
211
+ { text: 'Installation', link: '/installation' },
212
+ ],
213
+ },
214
+ {
215
+ text: 'Utilisation',
216
+ items: [
217
+ { text: 'Guide', link: '/guide' },
218
+ { text: 'Exemples', link: '/examples' },
219
+ ],
220
+ },
221
+ {
222
+ text: 'Reference',
223
+ items: [
224
+ { text: 'API', link: '/api' },
225
+ { text: 'Skills', link: '/skills' },
226
+ ],
227
+ },
228
+ {
229
+ text: 'Aide',
230
+ items: [
231
+ { text: 'Depannage', link: '/troubleshooting' },
232
+ { text: 'Bonnes pratiques', link: '/best-practices' },
233
+ ],
234
+ },
235
+ ],
236
+ },
237
+ };
238
+ ```
239
+
240
+ ## Personnalisation
241
+
242
+ ### Composants personnalises
243
+
244
+ Les fichiers MDX utilisent des composants standard :
245
+
246
+ - `<Note>` — Notes colorees (info, warning, danger, tip)
247
+ - `<Accordion>` — Contenu pliable
248
+ - `<CardGroup>` et `<Card>` — Cartes de navigation
249
+ - `<Tabs>` et `<Tab>` — Onglets
250
+
251
+ Adaptez-les selon votre plateforme :
252
+
253
+ #### Docusaurus
254
+ ```jsx
255
+ import Admonition from '@theme/Admonition';
256
+ // <Note type="info"> → <Admonition type="info">
257
+ ```
258
+
259
+ #### Nextra
260
+ ```jsx
261
+ import { Callout } from 'nextra-theme-docs';
262
+ // <Note type="info"> → <Callout type="info">
263
+ ```
264
+
265
+ ### Theme et couleurs
266
+
267
+ Les exemples de code utilisent la syntaxe standard. Configurez votre theme de coloration syntaxique :
268
+
269
+ ```javascript
270
+ // Prism pour Docusaurus
271
+ prism: {
272
+ theme: lightCodeTheme,
273
+ darkTheme: darkCodeTheme,
274
+ additionalLanguages: ['bash', 'typescript', 'javascript', 'json', 'docker'],
275
+ }
276
+ ```
277
+
278
+ ## Recherche
279
+
280
+ Pour activer la recherche :
281
+
282
+ ### Algolia (Docusaurus)
283
+ ```javascript
284
+ themeConfig: {
285
+ algolia: {
286
+ apiKey: 'your-api-key',
287
+ indexName: 'claude-code-provider',
288
+ appId: 'your-app-id',
289
+ },
290
+ }
291
+ ```
292
+
293
+ ### Recherche locale (VitePress)
294
+ ```javascript
295
+ themeConfig: {
296
+ search: {
297
+ provider: 'local',
298
+ },
299
+ }
300
+ ```
301
+
302
+ ## Contribution
303
+
304
+ Pour contribuer a la documentation :
305
+
306
+ 1. Modifier les fichiers `.mdx`
307
+ 2. Tester localement avec votre plateforme
308
+ 3. Soumettre une PR
309
+
310
+ ## Structure recommandee finale
311
+
312
+ ```
313
+ docs/
314
+ content/
315
+ index.mdx # Introduction
316
+ installation.mdx # Installation
317
+ guide.mdx # Guide d'utilisation
318
+ api.mdx # Reference API
319
+ examples.mdx # Exemples pratiques
320
+ skills.mdx # Skills personnalisees
321
+ troubleshooting.mdx # Depannage
322
+ best-practices.mdx # Bonnes pratiques
323
+ README.md # Ce fichier
324
+ _meta.json # Metadonnees (Nextra)
325
+ sidebars.js # Sidebar (Docusaurus)
326
+ ```
327
+
328
+ ## Liens utiles
329
+
330
+ - [Repository GitHub](https://github.com/BoostEcom/ThemeCopilotAI)
331
+ - [Vercel AI SDK](https://sdk.vercel.ai/docs)
332
+ - [Claude Agent SDK](https://docs.anthropic.com/claude/docs)
333
+ - [Package NPM](https://www.npmjs.com/package/@boostecom/provider)
334
+
335
+ ## License
336
+
337
+ MIT — Voir le fichier LICENSE du projet principal
@@ -0,0 +1,324 @@
1
+ ---
2
+ title: "Agent Teams"
3
+ description: "Créer des équipes d'agents spécialisés avec Claude Opus 4.6"
4
+ ---
5
+
6
+ # Agent Teams
7
+
8
+ Guide complet pour créer et coordonner des équipes d'agents spécialisés avec Claude Code Provider.
9
+
10
+ ## Introduction
11
+
12
+ **Agent Teams** est une fonctionnalité puissante introduite dans **Claude Opus 4.6** qui permet de créer plusieurs agents spécialisés travaillant ensemble pour accomplir des tâches complexes.
13
+
14
+ ### Avantages des Agent Teams
15
+
16
+ - **Spécialisation** : Chaque agent excelle dans son domaine
17
+ - **Isolation** : Outils et permissions séparés par agent
18
+ - **Efficacité** : Modèles optimisés par tâche (Opus pour complexe, Haiku pour simple)
19
+ - **Coordination** : Les agents se passent automatiquement les tâches
20
+
21
+ ## Configuration de base
22
+
23
+ ```typescript
24
+ import { claudeCode } from '@boostecom/provider';
25
+ import { generateText } from 'ai';
26
+
27
+ const model = claudeCode('opus', {
28
+ agents: {
29
+ // Agent de recherche
30
+ researcher: {
31
+ description: 'Expert en recherche et analyse d\'information',
32
+ tools: ['Read', 'Grep', 'Glob', 'WebSearch'],
33
+ disallowedTools: ['Write', 'Edit'],
34
+ prompt: 'Tu es un expert en recherche. Ton rôle est de trouver et analyser l\'information.',
35
+ model: 'sonnet', // Modèle rapide pour la recherche
36
+ },
37
+
38
+ // Agent de développement
39
+ developer: {
40
+ description: 'Expert en écriture et refactoring de code',
41
+ tools: ['Read', 'Write', 'Edit', 'Grep'],
42
+ prompt: 'Tu es un développeur senior. Écris du code propre et maintenable.',
43
+ model: 'opus', // Modèle le plus capable
44
+ },
45
+
46
+ // Agent de test
47
+ tester: {
48
+ description: 'Expert en tests et assurance qualité',
49
+ tools: ['Read', 'Write', 'Bash'],
50
+ prompt: 'Tu es un QA engineer. Écris des tests complets.',
51
+ model: 'haiku', // Modèle rapide pour les tests
52
+ },
53
+ },
54
+ });
55
+
56
+ const { text } = await generateText({
57
+ model,
58
+ prompt: 'Crée un système d\'auth complet avec tests',
59
+ });
60
+ ```
61
+
62
+ ## Propriétés d'un Agent
63
+
64
+ ### `description` (requis)
65
+
66
+ Description en langage naturel de quand utiliser cet agent. Claude l'utilise pour router les tâches.
67
+
68
+ ```typescript
69
+ description: 'Expert at finding bugs and writing comprehensive test suites'
70
+ ```
71
+
72
+ ### `tools` (optionnel)
73
+
74
+ Liste des outils autorisés pour cet agent. Si omis, hérite tous les outils du parent.
75
+
76
+ ```typescript
77
+ tools: ['Read', 'Write', 'Bash', 'Grep']
78
+ ```
79
+
80
+ ### `disallowedTools` (optionnel)
81
+
82
+ Liste des outils explicitement interdits.
83
+
84
+ ```typescript
85
+ disallowedTools: ['Bash(rm:*)', 'Bash(sudo:*)'] // Interdire commandes dangereuses
86
+ ```
87
+
88
+ ### `prompt` (requis)
89
+
90
+ System prompt de l'agent définissant son rôle et comportement.
91
+
92
+ ```typescript
93
+ prompt: `Tu es un expert en sécurité. Ton rôle est de :
94
+ - Identifier les vulnérabilités
95
+ - Proposer des solutions sécurisées
96
+ - Suivre les best practices OWASP`
97
+ ```
98
+
99
+ ### `model` (optionnel)
100
+
101
+ Modèle à utiliser pour cet agent. Si omis ou `'inherit'`, utilise le modèle principal.
102
+
103
+ ```typescript
104
+ model: 'sonnet' | 'opus' | 'haiku' | 'inherit'
105
+ ```
106
+
107
+ - **Opus** : Tâches complexes, raisonnement avancé
108
+ - **Sonnet** : Équilibre performance/coût
109
+ - **Haiku** : Tâches simples et rapides
110
+
111
+ ### `mcpServers` (optionnel)
112
+
113
+ Serveurs MCP disponibles pour cet agent.
114
+
115
+ ```typescript
116
+ mcpServers: ['filesystem', 'github']
117
+ ```
118
+
119
+ ## Cas d'usage
120
+
121
+ ### 1. Équipe de développement full-stack
122
+
123
+ ```typescript
124
+ const model = claudeCode('opus', {
125
+ agents: {
126
+ frontend: {
127
+ description: 'Expert React/TypeScript pour interfaces utilisateur',
128
+ tools: ['Read', 'Write', 'Edit'],
129
+ prompt: 'Tu crées des composants React accessibles et performants.',
130
+ model: 'opus',
131
+ },
132
+
133
+ backend: {
134
+ description: 'Expert Node.js/Express pour APIs REST',
135
+ tools: ['Read', 'Write', 'Edit', 'Bash'],
136
+ prompt: 'Tu construis des APIs sécurisées et scalables.',
137
+ model: 'opus',
138
+ },
139
+
140
+ database: {
141
+ description: 'Expert PostgreSQL pour schémas et requêtes',
142
+ tools: ['Read', 'Write', 'Bash'],
143
+ prompt: 'Tu conçois des schémas de bases de données optimisés.',
144
+ model: 'sonnet',
145
+ },
146
+ },
147
+ });
148
+ ```
149
+
150
+ ### 2. Pipeline CI/CD
151
+
152
+ ```typescript
153
+ const model = claudeCode('opus', {
154
+ agents: {
155
+ linter: {
156
+ description: 'Analyse statique et style de code',
157
+ tools: ['Read', 'Bash'],
158
+ disallowedTools: ['Write', 'Edit'],
159
+ prompt: 'Tu vérifies la qualité du code selon nos standards.',
160
+ model: 'haiku',
161
+ },
162
+
163
+ tester: {
164
+ description: 'Exécution de tests unitaires et d\'intégration',
165
+ tools: ['Read', 'Bash'],
166
+ prompt: 'Tu exécutes tous les tests et rapportes les résultats.',
167
+ model: 'haiku',
168
+ },
169
+
170
+ deployer: {
171
+ description: 'Déploiement en production',
172
+ tools: ['Read', 'Bash'],
173
+ prompt: 'Tu déploies l\'application de manière sécurisée.',
174
+ model: 'sonnet',
175
+ },
176
+ },
177
+ });
178
+ ```
179
+
180
+ ### 3. Équipe de data science
181
+
182
+ ```typescript
183
+ const model = claudeCode('opus', {
184
+ agents: {
185
+ analyst: {
186
+ description: 'Analyse exploratoire de données',
187
+ tools: ['Read', 'Bash', 'Skill'],
188
+ prompt: 'Tu explores les données et génères des insights.',
189
+ model: 'opus',
190
+ },
191
+
192
+ modeler: {
193
+ description: 'Entraînement de modèles ML',
194
+ tools: ['Read', 'Write', 'Bash'],
195
+ prompt: 'Tu entraînes et optimises des modèles ML.',
196
+ model: 'opus',
197
+ },
198
+
199
+ visualizer: {
200
+ description: 'Création de visualisations et rapports',
201
+ tools: ['Read', 'Write', 'Skill'],
202
+ prompt: 'Tu crées des graphiques et dashboards clairs.',
203
+ model: 'sonnet',
204
+ },
205
+ },
206
+ });
207
+ ```
208
+
209
+ ## Coordination entre agents
210
+
211
+ Les agents communiquent automatiquement via Claude qui orchestre le travail.
212
+
213
+ ```typescript
214
+ const prompt = `Crée une application todo complète :
215
+ 1. L'agent frontend crée l'interface React
216
+ 2. L'agent backend crée l'API REST
217
+ 3. L'agent database crée le schéma PostgreSQL
218
+ 4. L'agent tester crée les tests E2E
219
+
220
+ Coordonnez-vous pour assurer la cohérence entre les parties.`;
221
+
222
+ const { text } = await generateText({ model, prompt });
223
+ ```
224
+
225
+ ## Agent Teams avec Skills
226
+
227
+ Combinez Agent Teams avec Skills pour des capacités encore plus puissantes.
228
+
229
+ ```typescript
230
+ const model = claudeCode('opus', {
231
+ settingSources: ['user', 'project'], // Charger Skills
232
+
233
+ agents: {
234
+ researcher: {
235
+ description: 'Recherche avec Skills spécialisées',
236
+ tools: ['Read', 'Skill', 'WebSearch'],
237
+ prompt: 'Utilise les Skills disponibles pour rechercher efficacement.',
238
+ model: 'sonnet',
239
+ },
240
+
241
+ implementer: {
242
+ description: 'Implémentation avec Skills de génération de code',
243
+ tools: ['Read', 'Write', 'Edit', 'Skill'],
244
+ prompt: 'Utilise les Skills pour générer du code de qualité.',
245
+ model: 'opus',
246
+ },
247
+ },
248
+
249
+ allowedTools: ['Skill', 'Read', 'Write', 'Edit', 'WebSearch'],
250
+ });
251
+ ```
252
+
253
+ ## Best Practices
254
+
255
+ ### 1. Descriptions claires
256
+
257
+ Utilisez des descriptions spécifiques pour un routage précis.
258
+
259
+ ```typescript
260
+ // ❌ Mauvais
261
+ description: 'Fait du code'
262
+
263
+ // ✅ Bon
264
+ description: 'Expert en React hooks et state management avec TypeScript'
265
+ ```
266
+
267
+ ### 2. Sécurité par agent
268
+
269
+ Restreignez les outils dangereux par agent.
270
+
271
+ ```typescript
272
+ researcher: {
273
+ disallowedTools: ['Write', 'Edit', 'Bash'], // Lecture seule
274
+ },
275
+
276
+ deployer: {
277
+ disallowedTools: ['Bash(rm:*)', 'Bash(sudo:*)'], // Pas de destruction
278
+ }
279
+ ```
280
+
281
+ ### 3. Optimisation des modèles
282
+
283
+ Choisissez le bon modèle pour chaque tâche.
284
+
285
+ ```typescript
286
+ // Tâches simples et répétitives
287
+ simpleAgent: { model: 'haiku' }
288
+
289
+ // Tâches complexes nécessitant raisonnement
290
+ complexAgent: { model: 'opus' }
291
+
292
+ // Équilibre
293
+ balancedAgent: { model: 'sonnet' }
294
+ ```
295
+
296
+ ### 4. Prompts spécialisés
297
+
298
+ Donnez des instructions claires et spécifiques à chaque agent.
299
+
300
+ ```typescript
301
+ prompt: `Tu es un expert en sécurité API. Ton rôle est de :
302
+ - Implémenter l'authentification JWT
303
+ - Valider toutes les entrées utilisateur
304
+ - Ajouter rate limiting
305
+ - Suivre les principes OWASP Top 10
306
+ - Ne jamais exposer d'informations sensibles dans les erreurs`
307
+ ```
308
+
309
+ ## Limitations
310
+
311
+ - Les agents ne peuvent pas s'appeler directement entre eux
312
+ - Claude orchestre la coordination
313
+ - Maximum ~10 agents recommandé pour la performance
314
+ - Les agents partagent le même contexte de conversation
315
+
316
+ ## Exemple complet
317
+
318
+ Voir [examples/agent-teams.ts](../examples/agent-teams.ts) pour un exemple complet et fonctionnel.
319
+
320
+ ## Références
321
+
322
+ - [Guide Skills](/docs/skills)
323
+ - [API Reference](/docs/api)
324
+ - [Claude Opus 4.6 Announcement](https://anthropic.com/news/claude-opus-4-6)