@compilr-dev/sdk 0.4.2 → 0.5.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/dist/index.d.ts CHANGED
@@ -64,6 +64,8 @@ export { STEP_ORDER, GUIDED_STEP_CRITERIA, getNextStep, isValidTransition, getSt
64
64
  export { platformSkills, designSkill, sketchSkill, prdSkill, refineSkill, refineItemSkill, architectureSkill, sessionNotesSkill, buildSkill, scaffoldSkill, } from './skills/index.js';
65
65
  export { ACTION_REGISTRY, getActionsForContext, getActionById, resolveActionPrompt, buildContextSummary, getSuggestedRole, } from './actions/index.js';
66
66
  export type { ActionContext, ActionDefinition } from './actions/index.js';
67
+ export { PROJECT_TYPES, getProjectTypeConfig, getProjectTypesByCategory, generalConfig, softwareConfig, researchConfig, businessPlanConfig, contentConfig, techDocsConfig, courseConfig, } from './project-types/index.js';
68
+ export type { ProjectTypeConfig, ProjectPhase, SuggestedAgent, DocumentTemplate, } from './project-types/index.js';
67
69
  export { defineTool, createSuccessResult, createErrorResult, mergeHooks, createLoggingHooks, createClaudeProvider, createOpenAIProvider, createGeminiNativeProvider, createOllamaProvider, createTogetherProvider, createGroqProvider, createFireworksProvider, createPerplexityProvider, createOpenRouterProvider, createMockProvider, MockProvider, Agent, ContextManager, DEFAULT_CONTEXT_CONFIG, createTaskTool, createSuggestTool, defaultAgentTypes, TOOL_SETS, BUILTIN_GUARDRAILS, TOOL_NAMES, getDefaultShellManager, builtinSkills, AnchorManager, MCPManager, AgentError, ProviderError, ToolError, ToolTimeoutError, MaxIterationsError, AbortError, } from '@compilr-dev/agents';
68
70
  export type { Tool, HooksConfig, AgentEvent, Message, LLMProvider, AnchorInput, ToolExecutionResult, AgentRunResult, PermissionHandler, ToolPermission, AgentTypeConfig, GuardrailTriggeredHandler, BeforeLLMHookResult, BeforeToolHook, BeforeToolHookResult, AfterToolHook, AgentState, AgentConfig, SessionInfo, Anchor, AnchorScope, AnchorClearOptions, AnchorPriority, AnchorQueryOptions, FileAccessType, FileAccess, GuardrailResult, GuardrailContext, MCPClient, MCPToolDefinition, } from '@compilr-dev/agents';
69
71
  export { DEFAULT_PERMISSION_RULES, findMatchingRule, permissionModeLabel, permissionLevelLabel, } from './permissions.js';
package/dist/index.js CHANGED
@@ -145,6 +145,10 @@ export { platformSkills, designSkill, sketchSkill, prdSkill, refineSkill, refine
145
145
  // =============================================================================
146
146
  export { ACTION_REGISTRY, getActionsForContext, getActionById, resolveActionPrompt, buildContextSummary, getSuggestedRole, } from './actions/index.js';
147
147
  // =============================================================================
148
+ // Project Types
149
+ // =============================================================================
150
+ export { PROJECT_TYPES, getProjectTypeConfig, getProjectTypesByCategory, generalConfig, softwareConfig, researchConfig, businessPlanConfig, contentConfig, techDocsConfig, courseConfig, } from './project-types/index.js';
151
+ // =============================================================================
148
152
  // Re-exports from @compilr-dev/agents (convenience — no need to install separately)
149
153
  // =============================================================================
150
154
  export {
@@ -10,7 +10,7 @@
10
10
  * - Data models: camelCase properties (output types)
11
11
  * - Input types: snake_case properties (matching CLI tool input schemas)
12
12
  */
13
- export type ProjectType = 'general' | 'web' | 'cli' | 'library' | 'api';
13
+ export type ProjectType = 'general' | 'web' | 'cli' | 'library' | 'api' | 'research' | 'business-plan' | 'content' | 'tech-docs' | 'course';
14
14
  export type ProjectStatus = 'active' | 'paused' | 'completed' | 'archived';
15
15
  export type RepoPattern = 'single' | 'two-repo';
16
16
  export type WorkflowMode = 'flexible' | 'guided';
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Project Type Configurations — defaults for each project type.
3
+ */
4
+ import type { ProjectTypeConfig } from './types.js';
5
+ export declare const softwareConfig: ProjectTypeConfig;
6
+ export declare const generalConfig: ProjectTypeConfig;
7
+ export declare const researchConfig: ProjectTypeConfig;
8
+ export declare const businessPlanConfig: ProjectTypeConfig;
9
+ export declare const contentConfig: ProjectTypeConfig;
10
+ export declare const techDocsConfig: ProjectTypeConfig;
11
+ export declare const courseConfig: ProjectTypeConfig;
@@ -0,0 +1,381 @@
1
+ /**
2
+ * Project Type Configurations — defaults for each project type.
3
+ */
4
+ // =============================================================================
5
+ // Software Development (current default)
6
+ // =============================================================================
7
+ export const softwareConfig = {
8
+ id: 'web',
9
+ label: 'Software Development',
10
+ description: 'Build web apps, APIs, CLIs, and libraries',
11
+ icon: 'Code',
12
+ category: 'software',
13
+ phases: [
14
+ {
15
+ id: 'design',
16
+ label: 'Design',
17
+ description: 'Define the application',
18
+ skillId: 'design',
19
+ completionCheck: 'has-document',
20
+ completionDocType: 'prd',
21
+ },
22
+ {
23
+ id: 'backlog',
24
+ label: 'Backlog',
25
+ description: 'Break down into tasks',
26
+ skillId: 'refine',
27
+ completionCheck: 'has-workitems',
28
+ },
29
+ {
30
+ id: 'architecture',
31
+ label: 'Architecture',
32
+ description: 'System design',
33
+ skillId: 'architecture',
34
+ completionCheck: 'has-document',
35
+ completionDocType: 'architecture',
36
+ },
37
+ {
38
+ id: 'scaffold',
39
+ label: 'Scaffold',
40
+ description: 'Generate code',
41
+ skillId: 'scaffold',
42
+ completionCheck: 'has-scaffold',
43
+ },
44
+ {
45
+ id: 'build',
46
+ label: 'Build',
47
+ description: 'Implement features',
48
+ skillId: 'build',
49
+ completionCheck: 'has-workitems',
50
+ },
51
+ ],
52
+ suggestedAgents: [
53
+ { role: 'developer', label: 'Developer', description: 'Writes and debugs code' },
54
+ { role: 'architect', label: 'Architect', description: 'System design and technical decisions' },
55
+ { role: 'qa', label: 'QA', description: 'Testing and quality assurance' },
56
+ { role: 'pm', label: 'PM', description: 'Project planning and coordination' },
57
+ { role: 'security', label: 'Security', description: 'Security review and hardening' },
58
+ ],
59
+ documentTemplates: [
60
+ { type: 'prd', label: 'PRD', description: 'Product Requirements Document' },
61
+ { type: 'architecture', label: 'Architecture', description: 'System architecture design' },
62
+ { type: 'app-model', label: 'App Model', description: 'Application entity model' },
63
+ { type: 'session-notes', label: 'Session Notes', description: 'Summary of work done' },
64
+ ],
65
+ projectActions: ['design', 'prd', 'architecture', 'refine', 'scaffold', 'session-notes'],
66
+ workItemActions: ['build', 'refine-item', 'code-review', 'explain'],
67
+ systemPromptContext: 'This is a software development project. The user is building an application.',
68
+ };
69
+ // =============================================================================
70
+ // General (blank slate)
71
+ // =============================================================================
72
+ export const generalConfig = {
73
+ id: 'general',
74
+ label: 'General',
75
+ description: 'Blank project — define your own workflow',
76
+ icon: 'FolderOpen',
77
+ category: 'software',
78
+ phases: [],
79
+ suggestedAgents: [],
80
+ documentTemplates: [
81
+ { type: 'notes', label: 'Notes', description: 'General notes' },
82
+ { type: 'session-notes', label: 'Session Notes', description: 'Summary of work done' },
83
+ ],
84
+ projectActions: ['session-notes'],
85
+ workItemActions: ['explain'],
86
+ systemPromptContext: 'This is a general-purpose project.',
87
+ };
88
+ // =============================================================================
89
+ // Research Paper / Academic
90
+ // =============================================================================
91
+ export const researchConfig = {
92
+ id: 'research',
93
+ label: 'Research Paper',
94
+ description: 'Write academic papers, theses, and reports',
95
+ icon: 'GraduationCap',
96
+ category: 'writing',
97
+ phases: [
98
+ {
99
+ id: 'topic',
100
+ label: 'Topic',
101
+ description: 'Define research question',
102
+ completionCheck: 'manual',
103
+ },
104
+ {
105
+ id: 'literature',
106
+ label: 'Literature Review',
107
+ description: 'Review existing research',
108
+ completionCheck: 'has-document',
109
+ completionDocType: 'literature-review',
110
+ },
111
+ {
112
+ id: 'outline',
113
+ label: 'Outline',
114
+ description: 'Structure the paper',
115
+ completionCheck: 'has-document',
116
+ completionDocType: 'outline',
117
+ },
118
+ {
119
+ id: 'draft',
120
+ label: 'Draft',
121
+ description: 'Write sections',
122
+ completionCheck: 'has-workitems',
123
+ },
124
+ {
125
+ id: 'review',
126
+ label: 'Review',
127
+ description: 'Peer review and revisions',
128
+ completionCheck: 'manual',
129
+ },
130
+ ],
131
+ suggestedAgents: [
132
+ {
133
+ role: 'researcher',
134
+ label: 'Researcher',
135
+ description: 'Deep research, source evaluation, analysis',
136
+ },
137
+ {
138
+ role: 'reviewer',
139
+ label: 'Reviewer',
140
+ description: 'Critical review, feedback, quality checks',
141
+ },
142
+ { role: 'editor', label: 'Editor', description: 'Style, clarity, grammar, consistency' },
143
+ ],
144
+ documentTemplates: [
145
+ { type: 'outline', label: 'Outline', description: 'Paper structure and sections' },
146
+ {
147
+ type: 'literature-review',
148
+ label: 'Literature Review',
149
+ description: 'Summary of existing research',
150
+ },
151
+ { type: 'abstract', label: 'Abstract', description: 'Paper abstract' },
152
+ { type: 'methodology', label: 'Methodology', description: 'Research methodology' },
153
+ { type: 'bibliography', label: 'Bibliography', description: 'References and citations' },
154
+ { type: 'session-notes', label: 'Session Notes', description: 'Summary of work done' },
155
+ ],
156
+ projectActions: ['session-notes'],
157
+ workItemActions: ['explain'],
158
+ systemPromptContext: 'This is an academic research project. The user is writing a research paper or thesis. Focus on academic rigor, proper citations, and structured argumentation.',
159
+ };
160
+ // =============================================================================
161
+ // Business Plan / Startup
162
+ // =============================================================================
163
+ export const businessPlanConfig = {
164
+ id: 'business-plan',
165
+ label: 'Business Plan',
166
+ description: 'Create business plans, market analysis, and pitch decks',
167
+ icon: 'Briefcase',
168
+ category: 'business',
169
+ phases: [
170
+ {
171
+ id: 'vision',
172
+ label: 'Vision',
173
+ description: 'Define the business idea',
174
+ completionCheck: 'manual',
175
+ },
176
+ {
177
+ id: 'market',
178
+ label: 'Market Research',
179
+ description: 'Analyze the market',
180
+ completionCheck: 'has-document',
181
+ completionDocType: 'market-analysis',
182
+ },
183
+ {
184
+ id: 'model',
185
+ label: 'Business Model',
186
+ description: 'Define revenue and operations',
187
+ completionCheck: 'has-document',
188
+ completionDocType: 'business-model',
189
+ },
190
+ {
191
+ id: 'financials',
192
+ label: 'Financials',
193
+ description: 'Financial projections',
194
+ completionCheck: 'has-document',
195
+ completionDocType: 'financial-model',
196
+ },
197
+ {
198
+ id: 'pitch',
199
+ label: 'Pitch',
200
+ description: 'Create the pitch',
201
+ completionCheck: 'has-document',
202
+ completionDocType: 'pitch',
203
+ },
204
+ ],
205
+ suggestedAgents: [
206
+ { role: 'strategist', label: 'Strategist', description: 'Business strategy and vision' },
207
+ { role: 'analyst', label: 'Analyst', description: 'Market research and data analysis' },
208
+ { role: 'writer', label: 'Writer', description: 'Clear, persuasive business writing' },
209
+ ],
210
+ documentTemplates: [
211
+ { type: 'executive-summary', label: 'Executive Summary', description: 'Business overview' },
212
+ {
213
+ type: 'market-analysis',
214
+ label: 'Market Analysis',
215
+ description: 'Market size, trends, competition',
216
+ },
217
+ { type: 'business-model', label: 'Business Model', description: 'Revenue, costs, operations' },
218
+ { type: 'financial-model', label: 'Financial Model', description: 'Projections and forecasts' },
219
+ { type: 'pitch', label: 'Pitch Narrative', description: 'Investor pitch content' },
220
+ { type: 'session-notes', label: 'Session Notes', description: 'Summary of work done' },
221
+ ],
222
+ projectActions: ['session-notes'],
223
+ workItemActions: ['explain'],
224
+ systemPromptContext: 'This is a business plan project. The user is developing a business plan or startup pitch. Focus on market analysis, financial viability, and clear communication.',
225
+ };
226
+ // =============================================================================
227
+ // Content / Blog / Marketing
228
+ // =============================================================================
229
+ export const contentConfig = {
230
+ id: 'content',
231
+ label: 'Content & Marketing',
232
+ description: 'Create articles, blog posts, social media content',
233
+ icon: 'PenTool',
234
+ category: 'writing',
235
+ phases: [
236
+ {
237
+ id: 'ideation',
238
+ label: 'Ideation',
239
+ description: 'Generate content ideas',
240
+ completionCheck: 'has-workitems',
241
+ },
242
+ {
243
+ id: 'research',
244
+ label: 'Research',
245
+ description: 'Research topics',
246
+ completionCheck: 'manual',
247
+ },
248
+ { id: 'draft', label: 'Draft', description: 'Write content', completionCheck: 'has-workitems' },
249
+ { id: 'edit', label: 'Edit', description: 'Review and polish', completionCheck: 'manual' },
250
+ {
251
+ id: 'publish',
252
+ label: 'Publish',
253
+ description: 'Finalize for publication',
254
+ completionCheck: 'manual',
255
+ },
256
+ ],
257
+ suggestedAgents: [
258
+ { role: 'writer', label: 'Writer', description: 'Creative writing and content creation' },
259
+ { role: 'editor', label: 'Editor', description: 'Editing, proofreading, style consistency' },
260
+ {
261
+ role: 'seo',
262
+ label: 'SEO Specialist',
263
+ description: 'Search optimization and keyword strategy',
264
+ },
265
+ ],
266
+ documentTemplates: [
267
+ { type: 'editorial-calendar', label: 'Editorial Calendar', description: 'Content schedule' },
268
+ { type: 'brand-guide', label: 'Brand Guide', description: 'Voice, tone, and style guidelines' },
269
+ { type: 'article', label: 'Article', description: 'Blog post or article draft' },
270
+ { type: 'session-notes', label: 'Session Notes', description: 'Summary of work done' },
271
+ ],
272
+ projectActions: ['session-notes'],
273
+ workItemActions: ['explain'],
274
+ systemPromptContext: 'This is a content/marketing project. The user is creating articles, blog posts, or marketing content. Focus on engaging writing, SEO awareness, and brand consistency.',
275
+ };
276
+ // =============================================================================
277
+ // Technical Documentation
278
+ // =============================================================================
279
+ export const techDocsConfig = {
280
+ id: 'tech-docs',
281
+ label: 'Technical Documentation',
282
+ description: 'Write API docs, user guides, and tutorials',
283
+ icon: 'BookOpen',
284
+ category: 'writing',
285
+ phases: [
286
+ {
287
+ id: 'scope',
288
+ label: 'Scope',
289
+ description: 'Define documentation scope',
290
+ completionCheck: 'manual',
291
+ },
292
+ {
293
+ id: 'outline',
294
+ label: 'Outline',
295
+ description: 'Structure the docs',
296
+ completionCheck: 'has-document',
297
+ completionDocType: 'outline',
298
+ },
299
+ {
300
+ id: 'draft',
301
+ label: 'Draft',
302
+ description: 'Write documentation',
303
+ completionCheck: 'has-workitems',
304
+ },
305
+ { id: 'review', label: 'Review', description: 'Technical review', completionCheck: 'manual' },
306
+ ],
307
+ suggestedAgents: [
308
+ {
309
+ role: 'technical-writer',
310
+ label: 'Technical Writer',
311
+ description: 'Clear technical writing and documentation',
312
+ },
313
+ { role: 'reviewer', label: 'Reviewer', description: 'Technical accuracy review' },
314
+ ],
315
+ documentTemplates: [
316
+ { type: 'getting-started', label: 'Getting Started', description: 'Quick start guide' },
317
+ { type: 'api-reference', label: 'API Reference', description: 'API documentation' },
318
+ { type: 'tutorial', label: 'Tutorial', description: 'Step-by-step tutorial' },
319
+ { type: 'outline', label: 'Outline', description: 'Documentation structure' },
320
+ { type: 'session-notes', label: 'Session Notes', description: 'Summary of work done' },
321
+ ],
322
+ projectActions: ['session-notes'],
323
+ workItemActions: ['explain'],
324
+ systemPromptContext: 'This is a technical documentation project. The user is writing documentation such as API references, user guides, or tutorials. Focus on clarity, accuracy, and developer experience.',
325
+ };
326
+ // =============================================================================
327
+ // Course / Training Material
328
+ // =============================================================================
329
+ export const courseConfig = {
330
+ id: 'course',
331
+ label: 'Course / Training',
332
+ description: 'Create courses, lessons, exercises, and assessments',
333
+ icon: 'School',
334
+ category: 'education',
335
+ phases: [
336
+ {
337
+ id: 'curriculum',
338
+ label: 'Curriculum',
339
+ description: 'Define learning objectives',
340
+ completionCheck: 'has-document',
341
+ completionDocType: 'syllabus',
342
+ },
343
+ {
344
+ id: 'lessons',
345
+ label: 'Lessons',
346
+ description: 'Create lesson content',
347
+ completionCheck: 'has-workitems',
348
+ },
349
+ {
350
+ id: 'exercises',
351
+ label: 'Exercises',
352
+ description: 'Create practice exercises',
353
+ completionCheck: 'has-workitems',
354
+ },
355
+ {
356
+ id: 'assessment',
357
+ label: 'Assessment',
358
+ description: 'Create quizzes and tests',
359
+ completionCheck: 'manual',
360
+ },
361
+ ],
362
+ suggestedAgents: [
363
+ { role: 'instructor', label: 'Instructor', description: 'Course design and lesson planning' },
364
+ {
365
+ role: 'content-designer',
366
+ label: 'Content Designer',
367
+ description: 'Exercise and assessment creation',
368
+ },
369
+ { role: 'reviewer', label: 'Reviewer', description: 'Content review and quality assurance' },
370
+ ],
371
+ documentTemplates: [
372
+ { type: 'syllabus', label: 'Syllabus', description: 'Course overview and objectives' },
373
+ { type: 'lesson', label: 'Lesson', description: 'Lesson content' },
374
+ { type: 'exercise', label: 'Exercise', description: 'Practice exercise' },
375
+ { type: 'assessment', label: 'Assessment', description: 'Quiz or test' },
376
+ { type: 'session-notes', label: 'Session Notes', description: 'Summary of work done' },
377
+ ],
378
+ projectActions: ['session-notes'],
379
+ workItemActions: ['explain'],
380
+ systemPromptContext: 'This is an educational project. The user is creating a course or training material. Focus on clear explanations, progressive complexity, and effective learning design.',
381
+ };
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Project Types — configuration-driven project customization.
3
+ *
4
+ * Each project type provides defaults for workflow phases, agent roles,
5
+ * document templates, and skills. The underlying platform is the same
6
+ * for all types.
7
+ */
8
+ export type { ProjectTypeConfig, ProjectPhase, SuggestedAgent, DocumentTemplate } from './types.js';
9
+ export { generalConfig, softwareConfig, researchConfig, businessPlanConfig, contentConfig, techDocsConfig, courseConfig, } from './configs.js';
10
+ import type { ProjectTypeConfig } from './types.js';
11
+ /** All registered project types */
12
+ export declare const PROJECT_TYPES: ProjectTypeConfig[];
13
+ /** Get a project type config by ID. Falls back to general. */
14
+ export declare function getProjectTypeConfig(typeId: string): ProjectTypeConfig;
15
+ /** Get project types grouped by category. */
16
+ export declare function getProjectTypesByCategory(): Map<string, ProjectTypeConfig[]>;
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Project Types — configuration-driven project customization.
3
+ *
4
+ * Each project type provides defaults for workflow phases, agent roles,
5
+ * document templates, and skills. The underlying platform is the same
6
+ * for all types.
7
+ */
8
+ // Configs
9
+ export { generalConfig, softwareConfig, researchConfig, businessPlanConfig, contentConfig, techDocsConfig, courseConfig, } from './configs.js';
10
+ import { generalConfig, softwareConfig, researchConfig, businessPlanConfig, contentConfig, techDocsConfig, courseConfig, } from './configs.js';
11
+ /** All registered project types */
12
+ export const PROJECT_TYPES = [
13
+ softwareConfig,
14
+ generalConfig,
15
+ researchConfig,
16
+ businessPlanConfig,
17
+ contentConfig,
18
+ techDocsConfig,
19
+ courseConfig,
20
+ ];
21
+ /** Get a project type config by ID. Falls back to general. */
22
+ export function getProjectTypeConfig(typeId) {
23
+ return PROJECT_TYPES.find((t) => t.id === typeId) ?? generalConfig;
24
+ }
25
+ /** Get project types grouped by category. */
26
+ export function getProjectTypesByCategory() {
27
+ const groups = new Map();
28
+ for (const type of PROJECT_TYPES) {
29
+ const list = groups.get(type.category) ?? [];
30
+ list.push(type);
31
+ groups.set(type.category, list);
32
+ }
33
+ return groups;
34
+ }
@@ -0,0 +1,68 @@
1
+ /**
2
+ * Project Type Configuration — defines defaults, suggestions,
3
+ * and workflow for each project type.
4
+ *
5
+ * Project types are thin configuration layers, not separate codepaths.
6
+ * They affect what's suggested, not what's possible.
7
+ */
8
+ /**
9
+ * A workflow phase shown in the project panel lifecycle section.
10
+ */
11
+ export interface ProjectPhase {
12
+ id: string;
13
+ label: string;
14
+ description: string;
15
+ /** Skill to invoke for this phase */
16
+ skillId?: string;
17
+ /** How to detect if this phase is complete */
18
+ completionCheck?: 'has-document' | 'has-workitems' | 'has-scaffold' | 'manual';
19
+ /** Document type to check for has-document completion */
20
+ completionDocType?: string;
21
+ }
22
+ /**
23
+ * A suggested agent role for this project type.
24
+ */
25
+ export interface SuggestedAgent {
26
+ role: string;
27
+ label: string;
28
+ description: string;
29
+ /** Auto-add on project creation? */
30
+ autoAdd?: boolean;
31
+ }
32
+ /**
33
+ * A document template available for this project type.
34
+ */
35
+ export interface DocumentTemplate {
36
+ type: string;
37
+ label: string;
38
+ description: string;
39
+ /** Initial template content (markdown) */
40
+ template?: string;
41
+ }
42
+ /**
43
+ * Full project type configuration.
44
+ */
45
+ export interface ProjectTypeConfig {
46
+ /** Unique type ID (matches ProjectType union) */
47
+ id: string;
48
+ /** Display name */
49
+ label: string;
50
+ /** Short description for the type selector */
51
+ description: string;
52
+ /** Lucide icon name */
53
+ icon: string;
54
+ /** Category for grouping in type selector */
55
+ category: 'software' | 'writing' | 'business' | 'education';
56
+ /** Workflow phases (shown in project panel lifecycle) */
57
+ phases: ProjectPhase[];
58
+ /** Suggested agent roles (shown first in "Add Agent" dialog) */
59
+ suggestedAgents: SuggestedAgent[];
60
+ /** Document type templates */
61
+ documentTemplates: DocumentTemplate[];
62
+ /** Skills shown in the "What's Next" panel section */
63
+ projectActions: string[];
64
+ /** Skills shown on work item action buttons */
65
+ workItemActions: string[];
66
+ /** Context line injected into the system prompt */
67
+ systemPromptContext: string;
68
+ }
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Project Type Configuration — defines defaults, suggestions,
3
+ * and workflow for each project type.
4
+ *
5
+ * Project types are thin configuration layers, not separate codepaths.
6
+ * They affect what's suggested, not what's possible.
7
+ */
8
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@compilr-dev/sdk",
3
- "version": "0.4.2",
3
+ "version": "0.5.0",
4
4
  "description": "Universal agent runtime for building AI-powered applications",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",