claude-brain 0.30.2 → 0.30.3
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/README.md +241 -191
- package/VERSION +1 -1
- package/assets/CLAUDE-unified.md +11 -11
- package/assets/CLAUDE.md +29 -29
- package/package.json +7 -3
- package/packs/backend/node.json +173 -173
- package/packs/core/javascript.json +176 -176
- package/packs/core/typescript.json +222 -222
- package/packs/frontend/react.json +254 -254
- package/packs/meta/testing.json +172 -172
- package/scripts/postinstall.mjs +531 -531
- package/src/automation/decision-detector.ts +452 -452
- package/src/automation/phase12-manager.ts +456 -456
- package/src/automation/proactive-recall.ts +373 -373
- package/src/automation/project-detector.ts +310 -310
- package/src/automation/repo-scanner.ts +210 -205
- package/src/cli/auto-setup.ts +75 -75
- package/src/cli/auto-start.ts +266 -266
- package/src/cli/bin.ts +264 -264
- package/src/cli/commands/autostart.ts +90 -90
- package/src/cli/commands/chroma.ts +578 -577
- package/src/cli/commands/export-training.ts +70 -70
- package/src/cli/commands/export.ts +130 -130
- package/src/cli/commands/git-hook.ts +183 -183
- package/src/cli/commands/hooks.ts +217 -217
- package/src/cli/commands/init.ts +123 -123
- package/src/cli/commands/install-mcp.ts +122 -111
- package/src/cli/commands/models.ts +979 -979
- package/src/cli/commands/pack.ts +200 -200
- package/src/cli/commands/refresh.ts +344 -339
- package/src/cli/commands/reindex.ts +120 -120
- package/src/cli/commands/serve.ts +466 -463
- package/src/cli/commands/start.ts +44 -44
- package/src/cli/commands/status.ts +220 -203
- package/src/cli/commands/uninstall-mcp.ts +45 -41
- package/src/cli/commands/update.ts +130 -124
- package/src/cli/migrate-chroma.ts +106 -106
- package/src/cli/ui/animations.ts +80 -80
- package/src/cli/ui/components.ts +82 -82
- package/src/cli/ui/index.ts +4 -4
- package/src/cli/ui/logo.ts +36 -36
- package/src/cli/ui/theme.ts +55 -55
- package/src/code-intelligence/indexer.ts +352 -352
- package/src/code-intelligence/linker.ts +178 -178
- package/src/code-intelligence/parser.ts +484 -484
- package/src/code-intelligence/query.ts +291 -291
- package/src/code-intelligence/schema.ts +83 -83
- package/src/code-intelligence/types.ts +95 -95
- package/src/config/defaults.ts +52 -52
- package/src/config/home.ts +56 -56
- package/src/config/index.ts +5 -5
- package/src/config/loader.ts +192 -192
- package/src/config/schema.ts +446 -415
- package/src/config/validator.ts +182 -182
- package/src/context/assembler.ts +407 -400
- package/src/context/index.ts +79 -79
- package/src/context/progress-tracker.ts +174 -174
- package/src/context/standards-manager.ts +287 -287
- package/src/context/validator.ts +58 -58
- package/src/diagnostics/index.ts +122 -121
- package/src/health/index.ts +233 -232
- package/src/hooks/brain-hook.ts +134 -131
- package/src/hooks/capture.ts +168 -168
- package/src/hooks/claude-code-mastery.md +112 -112
- package/src/hooks/context-hook.ts +260 -245
- package/src/hooks/deduplicator.ts +72 -72
- package/src/hooks/git-capture.ts +109 -109
- package/src/hooks/git-hook-installer.ts +211 -207
- package/src/hooks/index.ts +20 -20
- package/src/hooks/installer.ts +306 -288
- package/src/hooks/interceptor-hook.ts +204 -201
- package/src/hooks/passive-classifier.ts +397 -397
- package/src/hooks/queue.ts +160 -129
- package/src/hooks/session-tracker.ts +312 -312
- package/src/hooks/types.ts +52 -52
- package/src/index.ts +7 -7
- package/src/intelligence/cross-project/generalizer.ts +283 -283
- package/src/intelligence/cross-project/index.ts +7 -7
- package/src/intelligence/hf-downloader.ts +222 -222
- package/src/intelligence/hf-manifest.json +78 -78
- package/src/intelligence/index.ts +24 -24
- package/src/intelligence/inference-router.ts +762 -762
- package/src/intelligence/model-manager.ts +263 -245
- package/src/intelligence/optimization/index.ts +10 -10
- package/src/intelligence/optimization/precompute.ts +202 -202
- package/src/intelligence/optimization/semantic-cache.ts +213 -207
- package/src/intelligence/prediction/index.ts +7 -7
- package/src/intelligence/prediction/recommender.ts +276 -268
- package/src/intelligence/reasoning/chain-retrieval.ts +243 -247
- package/src/intelligence/reasoning/index.ts +7 -7
- package/src/intelligence/temporal/evolution.ts +193 -197
- package/src/intelligence/temporal/index.ts +16 -16
- package/src/intelligence/temporal/query-processor.ts +190 -190
- package/src/intelligence/temporal/timeline.ts +272 -259
- package/src/intelligence/temporal/trends.ts +263 -263
- package/src/intelligence/tokenizer.ts +118 -118
- package/src/knowledge/entity-extractor.ts +447 -443
- package/src/knowledge/graph/builder.ts +185 -185
- package/src/knowledge/graph/linker.ts +201 -201
- package/src/knowledge/graph/memory-graph.ts +359 -359
- package/src/knowledge/graph/schema.ts +99 -99
- package/src/knowledge/graph/search.ts +166 -166
- package/src/knowledge/relationship-extractor.ts +108 -108
- package/src/memory/chroma/client.ts +211 -192
- package/src/memory/chroma/collection-manager.ts +92 -92
- package/src/memory/chroma/config.ts +57 -57
- package/src/memory/chroma/embeddings.ts +177 -175
- package/src/memory/chroma/index.ts +82 -82
- package/src/memory/chroma/migration.ts +270 -270
- package/src/memory/chroma/schemas.ts +69 -69
- package/src/memory/chroma/search.ts +319 -315
- package/src/memory/chroma/store.ts +755 -747
- package/src/memory/compression.ts +121 -121
- package/src/memory/consolidation/archiver.ts +162 -165
- package/src/memory/consolidation/merger.ts +182 -186
- package/src/memory/consolidation/scorer.ts +136 -136
- package/src/memory/database.ts +9 -0
- package/src/memory/dual-write.ts +145 -0
- package/src/memory/embeddings.ts +226 -226
- package/src/memory/episodic/detector.ts +108 -108
- package/src/memory/episodic/manager.ts +347 -351
- package/src/memory/episodic/summarizer.ts +179 -179
- package/src/memory/episodic/types.ts +52 -52
- package/src/memory/fts5-search.ts +692 -633
- package/src/memory/index.ts +943 -1060
- package/src/memory/migrations/add-fts5.ts +118 -108
- package/src/memory/patterns.ts +438 -438
- package/src/memory/pruning.ts +60 -60
- package/src/memory/schema.ts +88 -88
- package/src/memory/store.ts +911 -787
- package/src/orchestrator/handlers/decision-handler.ts +204 -204
- package/src/packs/index.ts +9 -9
- package/src/packs/loader.ts +134 -134
- package/src/packs/manager.ts +204 -204
- package/src/packs/ranker.ts +78 -78
- package/src/packs/types.ts +81 -81
- package/src/phase12/index.ts +5 -5
- package/src/retrieval/bm25/index.ts +300 -297
- package/src/retrieval/bm25/tokenizer.ts +184 -184
- package/src/retrieval/feedback/adaptive.ts +221 -221
- package/src/retrieval/feedback/index.ts +16 -16
- package/src/retrieval/feedback/metrics.ts +221 -221
- package/src/retrieval/feedback/store.ts +283 -283
- package/src/retrieval/fusion/index.ts +194 -194
- package/src/retrieval/fusion/rrf.ts +165 -165
- package/src/retrieval/index.ts +12 -12
- package/src/retrieval/pipeline.ts +375 -375
- package/src/retrieval/query/expander.ts +203 -203
- package/src/retrieval/query/index.ts +27 -27
- package/src/retrieval/query/intent-classifier.ts +252 -252
- package/src/retrieval/query/temporal-parser.ts +295 -295
- package/src/retrieval/reranker/index.ts +189 -188
- package/src/retrieval/reranker/model.ts +99 -95
- package/src/retrieval/service.ts +125 -125
- package/src/retrieval/types.ts +162 -162
- package/src/routing/entity-extractor.ts +454 -454
- package/src/routing/handlers/exploration-handler.ts +369 -0
- package/src/routing/handlers/index.ts +19 -0
- package/src/routing/handlers/memory-handler.ts +273 -0
- package/src/routing/handlers/mutation-handler.ts +241 -0
- package/src/routing/handlers/recall-handler.ts +642 -0
- package/src/routing/handlers/shared.ts +515 -0
- package/src/routing/handlers/types.ts +48 -0
- package/src/routing/intent-classifier.ts +552 -552
- package/src/routing/response-filter.ts +399 -391
- package/src/routing/router.ts +245 -2193
- package/src/routing/search-engine.ts +521 -514
- package/src/routing/types.ts +104 -94
- package/src/scripts/health-check.ts +118 -118
- package/src/scripts/setup.ts +122 -122
- package/src/server/auto-updater.ts +283 -276
- package/src/server/handlers/call-tool.ts +159 -159
- package/src/server/handlers/list-tools.ts +35 -35
- package/src/server/handlers/tools/auto-remember.ts +165 -165
- package/src/server/handlers/tools/brain.ts +86 -86
- package/src/server/handlers/tools/create-project.ts +135 -135
- package/src/server/handlers/tools/get-code-standards.ts +123 -123
- package/src/server/handlers/tools/get-corrections.ts +152 -152
- package/src/server/handlers/tools/get-patterns.ts +156 -156
- package/src/server/handlers/tools/get-project-context.ts +75 -75
- package/src/server/handlers/tools/index.ts +30 -30
- package/src/server/handlers/tools/init-project.ts +756 -756
- package/src/server/handlers/tools/list-projects.ts +126 -126
- package/src/server/handlers/tools/recall-similar.ts +87 -87
- package/src/server/handlers/tools/recognize-pattern.ts +132 -132
- package/src/server/handlers/tools/record-correction.ts +131 -131
- package/src/server/handlers/tools/remember-decision.ts +168 -168
- package/src/server/handlers/tools/schemas.ts +179 -179
- package/src/server/handlers/tools/search-code.ts +122 -122
- package/src/server/handlers/tools/smart-context.ts +146 -146
- package/src/server/handlers/tools/update-progress.ts +131 -131
- package/src/server/http-api.ts +215 -1229
- package/src/server/mcp-proxy.ts +85 -84
- package/src/server/mcp-server.ts +285 -284
- package/src/server/middleware/auth.ts +39 -0
- package/src/server/middleware/error-handler.ts +37 -0
- package/src/server/middleware/rate-limit.ts +53 -0
- package/src/server/middleware/validate.ts +42 -0
- package/src/server/pid-manager.ts +137 -136
- package/src/server/providers/resources.ts +581 -581
- package/src/server/routes/code.ts +228 -0
- package/src/server/routes/context.ts +26 -0
- package/src/server/routes/health.ts +19 -0
- package/src/server/routes/helpers.ts +100 -0
- package/src/server/routes/hooks.ts +197 -0
- package/src/server/routes/mcp.ts +47 -0
- package/src/server/routes/memory.ts +397 -0
- package/src/server/routes/models.ts +96 -0
- package/src/server/routes/projects.ts +89 -0
- package/src/server/routes/types.ts +21 -0
- package/src/server/schemas/api-schemas.ts +202 -0
- package/src/server/services.ts +720 -720
- package/src/server/utils/memory-indicator.ts +84 -84
- package/src/server/utils/response-formatter.ts +129 -129
- package/src/server/web-viewer.ts +1145 -1115
- package/src/setup/index.ts +38 -38
- package/src/tools/registry.ts +115 -115
- package/src/tools/schemas.ts +666 -666
- package/src/tools/types.ts +412 -412
- package/src/training/data-store.ts +320 -298
- package/src/training/retrain-pipeline.ts +399 -394
- package/src/utils/error-handler.ts +136 -136
- package/src/utils/index.ts +58 -58
- package/src/utils/kill-port.ts +55 -53
- package/src/utils/phase12-helper.ts +56 -56
- package/src/utils/safe-path.ts +43 -0
- package/src/utils/timing.ts +47 -47
- package/src/utils/transaction.ts +63 -63
- package/src/vault/index.ts +4 -3
- package/src/vault/paths.ts +106 -106
- package/src/vault/query.ts +4 -1
- package/src/vault/reader.ts +44 -1
- package/src/vault/watcher.ts +24 -1
- package/src/vault/writer.ts +487 -413
- package/skills/persistent-memory/SKILL.md +0 -148
- package/skills/persistent-memory/references/tool-reference.md +0 -90
package/src/tools/types.ts
CHANGED
|
@@ -1,412 +1,412 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Tool Types
|
|
3
|
-
* TypeScript types for tool inputs and outputs
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
// ============================================================================
|
|
7
|
-
// Input Types (derived from schemas)
|
|
8
|
-
// ============================================================================
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* Input for get_project_context tool
|
|
12
|
-
*/
|
|
13
|
-
export interface GetProjectContextInput {
|
|
14
|
-
/** Name of the project to get context for */
|
|
15
|
-
project_name: string
|
|
16
|
-
/** Whether to include similar past decisions from semantic memory */
|
|
17
|
-
include_memories?: boolean
|
|
18
|
-
/** Maximum number of relevant memories to include */
|
|
19
|
-
memory_limit?: number
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* Input for update_progress tool
|
|
24
|
-
*/
|
|
25
|
-
export interface UpdateProgressInput {
|
|
26
|
-
/** Name of the project */
|
|
27
|
-
project_name: string
|
|
28
|
-
/** Description of what was just completed */
|
|
29
|
-
completed_task: string
|
|
30
|
-
/** What should be done next */
|
|
31
|
-
next_steps: string
|
|
32
|
-
/** Optional additional notes or context */
|
|
33
|
-
notes?: string
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
/**
|
|
37
|
-
* Input for remember_decision tool
|
|
38
|
-
*/
|
|
39
|
-
export interface RememberDecisionInput {
|
|
40
|
-
/** Project this decision relates to */
|
|
41
|
-
project_name: string
|
|
42
|
-
/** What situation or problem led to this decision */
|
|
43
|
-
context: string
|
|
44
|
-
/** The decision that was made */
|
|
45
|
-
decision: string
|
|
46
|
-
/** Why this decision was made */
|
|
47
|
-
reasoning: string
|
|
48
|
-
/** Other options that were considered */
|
|
49
|
-
alternatives_considered?: string
|
|
50
|
-
/** Tags for categorizing this decision */
|
|
51
|
-
tags?: string[]
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
/**
|
|
55
|
-
* Input for recall_similar tool
|
|
56
|
-
*/
|
|
57
|
-
export interface RecallSimilarInput {
|
|
58
|
-
/** Description of current situation or question */
|
|
59
|
-
query: string
|
|
60
|
-
/** Optional: only search within specific project */
|
|
61
|
-
project_filter?: string
|
|
62
|
-
/** Maximum number of results to return */
|
|
63
|
-
limit?: number
|
|
64
|
-
/** Minimum similarity score (0-1) */
|
|
65
|
-
min_similarity?: number
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
/**
|
|
69
|
-
* Input for get_code_standards tool
|
|
70
|
-
*/
|
|
71
|
-
export interface GetCodeStandardsInput {
|
|
72
|
-
/** Name of the project */
|
|
73
|
-
project_name: string
|
|
74
|
-
/** Optional: filter standards by programming language */
|
|
75
|
-
language?: string
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
/**
|
|
79
|
-
* Input for list_projects tool
|
|
80
|
-
*/
|
|
81
|
-
export interface ListProjectsInput {
|
|
82
|
-
/** Filter projects by status */
|
|
83
|
-
status_filter?: 'active' | 'archived' | 'planning' | 'all'
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
// ============================================================================
|
|
87
|
-
// Phase 12 Input Types
|
|
88
|
-
// ============================================================================
|
|
89
|
-
|
|
90
|
-
/**
|
|
91
|
-
* Input for smart_context tool
|
|
92
|
-
*/
|
|
93
|
-
export interface SmartContextInput {
|
|
94
|
-
/** Name of the project */
|
|
95
|
-
project_name: string
|
|
96
|
-
/** What you are currently working on or asking about */
|
|
97
|
-
current_task: string
|
|
98
|
-
/** Minimum similarity for memory recall (0-1) */
|
|
99
|
-
min_similarity?: number
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
/**
|
|
103
|
-
* Input for auto_remember tool
|
|
104
|
-
*/
|
|
105
|
-
export interface AutoRememberInput {
|
|
106
|
-
/** Project to associate the decision with */
|
|
107
|
-
project_name: string
|
|
108
|
-
/** Text to analyze for decisions */
|
|
109
|
-
text: string
|
|
110
|
-
/** Minimum confidence to auto-save (0-1) */
|
|
111
|
-
confidence_threshold?: number
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
/**
|
|
115
|
-
* Input for get_phase12_status tool
|
|
116
|
-
*/
|
|
117
|
-
export interface GetPhase12StatusInput {
|
|
118
|
-
// No inputs required
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
/**
|
|
122
|
-
* Input for create_project tool
|
|
123
|
-
*/
|
|
124
|
-
export interface CreateProjectInput {
|
|
125
|
-
/** Name of the project (lowercase with hyphens) */
|
|
126
|
-
project_name: string
|
|
127
|
-
/** Brief description of the project */
|
|
128
|
-
description?: string
|
|
129
|
-
/** Technologies used in the project */
|
|
130
|
-
tech_stack?: string[]
|
|
131
|
-
/** Initial project status */
|
|
132
|
-
status?: 'planning' | 'active' | 'on-hold' | 'completed'
|
|
133
|
-
/** Tags for categorizing the project */
|
|
134
|
-
tags?: string[]
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
/**
|
|
138
|
-
* Input for init_project tool
|
|
139
|
-
*/
|
|
140
|
-
export interface InitProjectInput {
|
|
141
|
-
/** Path to be project directory. Defaults to current working directory. */
|
|
142
|
-
project_path?: string
|
|
143
|
-
/** Override project name (otherwise detected from package.json or folder name) */
|
|
144
|
-
project_name?: string
|
|
145
|
-
/** Whether to save project context to semantic memory for future recall */
|
|
146
|
-
save_to_memory?: boolean
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
// ============================================================================
|
|
150
|
-
// Pattern & Correction Tool Input Types
|
|
151
|
-
// ============================================================================
|
|
152
|
-
|
|
153
|
-
/**
|
|
154
|
-
* Input for recognize_pattern tool
|
|
155
|
-
*/
|
|
156
|
-
export interface RecognizePatternInput {
|
|
157
|
-
/** Project this pattern relates to */
|
|
158
|
-
project_name: string
|
|
159
|
-
/** Type of pattern */
|
|
160
|
-
pattern_type: 'solution' | 'anti-pattern' | 'best-practice' | 'common-issue'
|
|
161
|
-
/** Detailed description of the pattern */
|
|
162
|
-
description: string
|
|
163
|
-
/** Code example illustrating the pattern (optional) */
|
|
164
|
-
example?: string
|
|
165
|
-
/** Confidence in this pattern (0-1, default 0.8) */
|
|
166
|
-
confidence?: number
|
|
167
|
-
/** When this pattern was observed or applicable */
|
|
168
|
-
context?: string
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
/**
|
|
172
|
-
* Input for record_correction tool
|
|
173
|
-
*/
|
|
174
|
-
export interface RecordCorrectionInput {
|
|
175
|
-
/** Project this correction relates to */
|
|
176
|
-
project_name: string
|
|
177
|
-
/** What was wrong or the mistake that was made */
|
|
178
|
-
original: string
|
|
179
|
-
/** What should have been done instead */
|
|
180
|
-
correction: string
|
|
181
|
-
/** Why the correction is better than the original approach */
|
|
182
|
-
reasoning: string
|
|
183
|
-
/** When this correction was identified or applicable */
|
|
184
|
-
context?: string
|
|
185
|
-
/** Confidence in this correction (0-1, default 0.9) */
|
|
186
|
-
confidence?: number
|
|
187
|
-
}
|
|
188
|
-
|
|
189
|
-
/**
|
|
190
|
-
* Input for get_patterns tool
|
|
191
|
-
*/
|
|
192
|
-
export interface GetPatternsInput {
|
|
193
|
-
/** Project to retrieve patterns from (optional, returns all projects if not specified) */
|
|
194
|
-
project_name?: string
|
|
195
|
-
/** Filter by pattern type (optional) */
|
|
196
|
-
pattern_type?: 'solution' | 'anti-pattern' | 'best-practice' | 'common-issue'
|
|
197
|
-
/** Maximum number of patterns to return (default 10) */
|
|
198
|
-
limit?: number
|
|
199
|
-
/** Search query to find relevant patterns (optional, uses semantic search if not provided) */
|
|
200
|
-
query?: string
|
|
201
|
-
}
|
|
202
|
-
|
|
203
|
-
/**
|
|
204
|
-
* Input for get_corrections tool
|
|
205
|
-
*/
|
|
206
|
-
export interface GetCorrectionsInput {
|
|
207
|
-
/** Project to retrieve corrections from (optional, returns all projects if not specified) */
|
|
208
|
-
project_name?: string
|
|
209
|
-
/** Maximum number of corrections to return (default 10) */
|
|
210
|
-
limit?: number
|
|
211
|
-
/** Search query to find relevant corrections (optional, uses semantic search if not provided) */
|
|
212
|
-
query?: string
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
/**
|
|
216
|
-
* Input for rate_memory tool
|
|
217
|
-
*/
|
|
218
|
-
export interface RateMemoryInput {
|
|
219
|
-
/** ID of the memory to rate */
|
|
220
|
-
memory_id: string
|
|
221
|
-
/** Rating from 1 (not helpful) to 5 (very helpful) */
|
|
222
|
-
rating: 1 | 2 | 3 | 4 | 5
|
|
223
|
-
/** The original query that retrieved this memory */
|
|
224
|
-
query: string
|
|
225
|
-
/** Whether the memory was actually used */
|
|
226
|
-
was_used?: boolean
|
|
227
|
-
/** Optional feedback text */
|
|
228
|
-
feedback_text?: string
|
|
229
|
-
/** Project this feedback relates to */
|
|
230
|
-
project_name?: string
|
|
231
|
-
}
|
|
232
|
-
|
|
233
|
-
// ============================================================================
|
|
234
|
-
// Phase 15 - Advanced Intelligence Input Types
|
|
235
|
-
// ============================================================================
|
|
236
|
-
|
|
237
|
-
/**
|
|
238
|
-
* Input for get_decision_timeline tool
|
|
239
|
-
*/
|
|
240
|
-
export interface GetDecisionTimelineInput {
|
|
241
|
-
/** Filter timeline by project */
|
|
242
|
-
project_name?: string
|
|
243
|
-
/** Filter timeline by topic via semantic search */
|
|
244
|
-
topic?: string
|
|
245
|
-
/** Natural language time range */
|
|
246
|
-
time_range?: string
|
|
247
|
-
/** Maximum number of entries */
|
|
248
|
-
limit?: number
|
|
249
|
-
}
|
|
250
|
-
|
|
251
|
-
/**
|
|
252
|
-
* Input for analyze_decision_evolution tool
|
|
253
|
-
*/
|
|
254
|
-
export interface AnalyzeDecisionEvolutionInput {
|
|
255
|
-
/** The topic to analyze evolution for */
|
|
256
|
-
topic: string
|
|
257
|
-
/** Filter by project */
|
|
258
|
-
project_name?: string
|
|
259
|
-
/** Maximum decisions to analyze */
|
|
260
|
-
limit?: number
|
|
261
|
-
}
|
|
262
|
-
|
|
263
|
-
/**
|
|
264
|
-
* Input for detect_trends tool
|
|
265
|
-
*/
|
|
266
|
-
export interface DetectTrendsInput {
|
|
267
|
-
/** Filter by project */
|
|
268
|
-
project_name?: string
|
|
269
|
-
/** Analysis period in days */
|
|
270
|
-
period_days?: number
|
|
271
|
-
/** Minimum occurrences to include */
|
|
272
|
-
min_occurrences?: number
|
|
273
|
-
/** Maximum trends to return */
|
|
274
|
-
limit?: number
|
|
275
|
-
}
|
|
276
|
-
|
|
277
|
-
/**
|
|
278
|
-
* Input for what_if_analysis tool
|
|
279
|
-
*/
|
|
280
|
-
export interface WhatIfAnalysisInput {
|
|
281
|
-
/** The hypothetical change to analyze */
|
|
282
|
-
change: string
|
|
283
|
-
/** Filter by project */
|
|
284
|
-
project_name?: string
|
|
285
|
-
/** Maximum affected decisions to return */
|
|
286
|
-
max_results?: number
|
|
287
|
-
}
|
|
288
|
-
|
|
289
|
-
/**
|
|
290
|
-
* Input for get_recommendations tool
|
|
291
|
-
*/
|
|
292
|
-
export interface GetRecommendationsInput {
|
|
293
|
-
/** What to get recommendations for */
|
|
294
|
-
query: string
|
|
295
|
-
/** Filter by project */
|
|
296
|
-
project_name?: string
|
|
297
|
-
/** Maximum recommendations */
|
|
298
|
-
limit?: number
|
|
299
|
-
}
|
|
300
|
-
|
|
301
|
-
/**
|
|
302
|
-
* Input for find_cross_project_patterns tool
|
|
303
|
-
*/
|
|
304
|
-
export interface FindCrossProjectPatternsInput {
|
|
305
|
-
/** Minimum projects a pattern must appear in */
|
|
306
|
-
min_projects?: number
|
|
307
|
-
/** Maximum patterns to return */
|
|
308
|
-
limit?: number
|
|
309
|
-
/** Optional query to focus the search */
|
|
310
|
-
query?: string
|
|
311
|
-
}
|
|
312
|
-
|
|
313
|
-
// ============================================================================
|
|
314
|
-
// Phase 13 Retrieval Types
|
|
315
|
-
// ============================================================================
|
|
316
|
-
// Output Types
|
|
317
|
-
// ============================================================================
|
|
318
|
-
|
|
319
|
-
/**
|
|
320
|
-
* Standard MCP tool response format
|
|
321
|
-
*/
|
|
322
|
-
export interface ToolResponse {
|
|
323
|
-
content: Array<{
|
|
324
|
-
type: 'text'
|
|
325
|
-
text: string
|
|
326
|
-
}>
|
|
327
|
-
/** Whether the tool execution resulted in an error */
|
|
328
|
-
isError?: boolean
|
|
329
|
-
}
|
|
330
|
-
|
|
331
|
-
/**
|
|
332
|
-
* Project context returned by get_project_context
|
|
333
|
-
*/
|
|
334
|
-
export interface ProjectContext {
|
|
335
|
-
name: string
|
|
336
|
-
description: string
|
|
337
|
-
status: string
|
|
338
|
-
standards: string[]
|
|
339
|
-
recentProgress: string[]
|
|
340
|
-
memories?: Array<{
|
|
341
|
-
id: string
|
|
342
|
-
content: string
|
|
343
|
-
similarity: number
|
|
344
|
-
}>
|
|
345
|
-
}
|
|
346
|
-
|
|
347
|
-
/**
|
|
348
|
-
* Progress update result
|
|
349
|
-
*/
|
|
350
|
-
export interface ProgressUpdateResult {
|
|
351
|
-
success: boolean
|
|
352
|
-
message: string
|
|
353
|
-
timestamp: string
|
|
354
|
-
}
|
|
355
|
-
|
|
356
|
-
/**
|
|
357
|
-
* Decision storage result
|
|
358
|
-
*/
|
|
359
|
-
export interface DecisionStorageResult {
|
|
360
|
-
success: boolean
|
|
361
|
-
memoryId: string
|
|
362
|
-
message: string
|
|
363
|
-
}
|
|
364
|
-
|
|
365
|
-
/**
|
|
366
|
-
* Similar memory search result
|
|
367
|
-
*/
|
|
368
|
-
export interface SimilarMemory {
|
|
369
|
-
id: string
|
|
370
|
-
project: string
|
|
371
|
-
context: string
|
|
372
|
-
decision: string
|
|
373
|
-
reasoning: string
|
|
374
|
-
similarity: number
|
|
375
|
-
timestamp: string
|
|
376
|
-
}
|
|
377
|
-
|
|
378
|
-
/**
|
|
379
|
-
* Code standards response
|
|
380
|
-
*/
|
|
381
|
-
export interface CodeStandards {
|
|
382
|
-
global: string[]
|
|
383
|
-
projectSpecific: string[]
|
|
384
|
-
language?: string
|
|
385
|
-
}
|
|
386
|
-
|
|
387
|
-
/**
|
|
388
|
-
* Project list item
|
|
389
|
-
*/
|
|
390
|
-
export interface ProjectListItem {
|
|
391
|
-
name: string
|
|
392
|
-
status: 'active' | 'archived' | 'planning'
|
|
393
|
-
description: string
|
|
394
|
-
lastUpdated: string
|
|
395
|
-
}
|
|
396
|
-
|
|
397
|
-
// ============================================================================
|
|
398
|
-
// Union types for handler routing
|
|
399
|
-
// ============================================================================
|
|
400
|
-
|
|
401
|
-
export type ToolInput =
|
|
402
|
-
| GetProjectContextInput
|
|
403
|
-
| UpdateProgressInput
|
|
404
|
-
| RememberDecisionInput
|
|
405
|
-
| RecallSimilarInput
|
|
406
|
-
| GetCodeStandardsInput
|
|
407
|
-
| ListProjectsInput
|
|
408
|
-
| SmartContextInput
|
|
409
|
-
| AutoRememberInput
|
|
410
|
-
| GetPhase12StatusInput
|
|
411
|
-
| CreateProjectInput
|
|
412
|
-
| InitProjectInput
|
|
1
|
+
/**
|
|
2
|
+
* Tool Types
|
|
3
|
+
* TypeScript types for tool inputs and outputs
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
// ============================================================================
|
|
7
|
+
// Input Types (derived from schemas)
|
|
8
|
+
// ============================================================================
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Input for get_project_context tool
|
|
12
|
+
*/
|
|
13
|
+
export interface GetProjectContextInput {
|
|
14
|
+
/** Name of the project to get context for */
|
|
15
|
+
project_name: string
|
|
16
|
+
/** Whether to include similar past decisions from semantic memory */
|
|
17
|
+
include_memories?: boolean
|
|
18
|
+
/** Maximum number of relevant memories to include */
|
|
19
|
+
memory_limit?: number
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Input for update_progress tool
|
|
24
|
+
*/
|
|
25
|
+
export interface UpdateProgressInput {
|
|
26
|
+
/** Name of the project */
|
|
27
|
+
project_name: string
|
|
28
|
+
/** Description of what was just completed */
|
|
29
|
+
completed_task: string
|
|
30
|
+
/** What should be done next */
|
|
31
|
+
next_steps: string
|
|
32
|
+
/** Optional additional notes or context */
|
|
33
|
+
notes?: string
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Input for remember_decision tool
|
|
38
|
+
*/
|
|
39
|
+
export interface RememberDecisionInput {
|
|
40
|
+
/** Project this decision relates to */
|
|
41
|
+
project_name: string
|
|
42
|
+
/** What situation or problem led to this decision */
|
|
43
|
+
context: string
|
|
44
|
+
/** The decision that was made */
|
|
45
|
+
decision: string
|
|
46
|
+
/** Why this decision was made */
|
|
47
|
+
reasoning: string
|
|
48
|
+
/** Other options that were considered */
|
|
49
|
+
alternatives_considered?: string
|
|
50
|
+
/** Tags for categorizing this decision */
|
|
51
|
+
tags?: string[]
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
/**
|
|
55
|
+
* Input for recall_similar tool
|
|
56
|
+
*/
|
|
57
|
+
export interface RecallSimilarInput {
|
|
58
|
+
/** Description of current situation or question */
|
|
59
|
+
query: string
|
|
60
|
+
/** Optional: only search within specific project */
|
|
61
|
+
project_filter?: string
|
|
62
|
+
/** Maximum number of results to return */
|
|
63
|
+
limit?: number
|
|
64
|
+
/** Minimum similarity score (0-1) */
|
|
65
|
+
min_similarity?: number
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Input for get_code_standards tool
|
|
70
|
+
*/
|
|
71
|
+
export interface GetCodeStandardsInput {
|
|
72
|
+
/** Name of the project */
|
|
73
|
+
project_name: string
|
|
74
|
+
/** Optional: filter standards by programming language */
|
|
75
|
+
language?: string
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* Input for list_projects tool
|
|
80
|
+
*/
|
|
81
|
+
export interface ListProjectsInput {
|
|
82
|
+
/** Filter projects by status */
|
|
83
|
+
status_filter?: 'active' | 'archived' | 'planning' | 'all'
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
// ============================================================================
|
|
87
|
+
// Phase 12 Input Types
|
|
88
|
+
// ============================================================================
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* Input for smart_context tool
|
|
92
|
+
*/
|
|
93
|
+
export interface SmartContextInput {
|
|
94
|
+
/** Name of the project */
|
|
95
|
+
project_name: string
|
|
96
|
+
/** What you are currently working on or asking about */
|
|
97
|
+
current_task: string
|
|
98
|
+
/** Minimum similarity for memory recall (0-1) */
|
|
99
|
+
min_similarity?: number
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
/**
|
|
103
|
+
* Input for auto_remember tool
|
|
104
|
+
*/
|
|
105
|
+
export interface AutoRememberInput {
|
|
106
|
+
/** Project to associate the decision with */
|
|
107
|
+
project_name: string
|
|
108
|
+
/** Text to analyze for decisions */
|
|
109
|
+
text: string
|
|
110
|
+
/** Minimum confidence to auto-save (0-1) */
|
|
111
|
+
confidence_threshold?: number
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
/**
|
|
115
|
+
* Input for get_phase12_status tool
|
|
116
|
+
*/
|
|
117
|
+
export interface GetPhase12StatusInput {
|
|
118
|
+
// No inputs required
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* Input for create_project tool
|
|
123
|
+
*/
|
|
124
|
+
export interface CreateProjectInput {
|
|
125
|
+
/** Name of the project (lowercase with hyphens) */
|
|
126
|
+
project_name: string
|
|
127
|
+
/** Brief description of the project */
|
|
128
|
+
description?: string
|
|
129
|
+
/** Technologies used in the project */
|
|
130
|
+
tech_stack?: string[]
|
|
131
|
+
/** Initial project status */
|
|
132
|
+
status?: 'planning' | 'active' | 'on-hold' | 'completed'
|
|
133
|
+
/** Tags for categorizing the project */
|
|
134
|
+
tags?: string[]
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
/**
|
|
138
|
+
* Input for init_project tool
|
|
139
|
+
*/
|
|
140
|
+
export interface InitProjectInput {
|
|
141
|
+
/** Path to be project directory. Defaults to current working directory. */
|
|
142
|
+
project_path?: string
|
|
143
|
+
/** Override project name (otherwise detected from package.json or folder name) */
|
|
144
|
+
project_name?: string
|
|
145
|
+
/** Whether to save project context to semantic memory for future recall */
|
|
146
|
+
save_to_memory?: boolean
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
// ============================================================================
|
|
150
|
+
// Pattern & Correction Tool Input Types
|
|
151
|
+
// ============================================================================
|
|
152
|
+
|
|
153
|
+
/**
|
|
154
|
+
* Input for recognize_pattern tool
|
|
155
|
+
*/
|
|
156
|
+
export interface RecognizePatternInput {
|
|
157
|
+
/** Project this pattern relates to */
|
|
158
|
+
project_name: string
|
|
159
|
+
/** Type of pattern */
|
|
160
|
+
pattern_type: 'solution' | 'anti-pattern' | 'best-practice' | 'common-issue'
|
|
161
|
+
/** Detailed description of the pattern */
|
|
162
|
+
description: string
|
|
163
|
+
/** Code example illustrating the pattern (optional) */
|
|
164
|
+
example?: string
|
|
165
|
+
/** Confidence in this pattern (0-1, default 0.8) */
|
|
166
|
+
confidence?: number
|
|
167
|
+
/** When this pattern was observed or applicable */
|
|
168
|
+
context?: string
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
/**
|
|
172
|
+
* Input for record_correction tool
|
|
173
|
+
*/
|
|
174
|
+
export interface RecordCorrectionInput {
|
|
175
|
+
/** Project this correction relates to */
|
|
176
|
+
project_name: string
|
|
177
|
+
/** What was wrong or the mistake that was made */
|
|
178
|
+
original: string
|
|
179
|
+
/** What should have been done instead */
|
|
180
|
+
correction: string
|
|
181
|
+
/** Why the correction is better than the original approach */
|
|
182
|
+
reasoning: string
|
|
183
|
+
/** When this correction was identified or applicable */
|
|
184
|
+
context?: string
|
|
185
|
+
/** Confidence in this correction (0-1, default 0.9) */
|
|
186
|
+
confidence?: number
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
/**
|
|
190
|
+
* Input for get_patterns tool
|
|
191
|
+
*/
|
|
192
|
+
export interface GetPatternsInput {
|
|
193
|
+
/** Project to retrieve patterns from (optional, returns all projects if not specified) */
|
|
194
|
+
project_name?: string
|
|
195
|
+
/** Filter by pattern type (optional) */
|
|
196
|
+
pattern_type?: 'solution' | 'anti-pattern' | 'best-practice' | 'common-issue'
|
|
197
|
+
/** Maximum number of patterns to return (default 10) */
|
|
198
|
+
limit?: number
|
|
199
|
+
/** Search query to find relevant patterns (optional, uses semantic search if not provided) */
|
|
200
|
+
query?: string
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
/**
|
|
204
|
+
* Input for get_corrections tool
|
|
205
|
+
*/
|
|
206
|
+
export interface GetCorrectionsInput {
|
|
207
|
+
/** Project to retrieve corrections from (optional, returns all projects if not specified) */
|
|
208
|
+
project_name?: string
|
|
209
|
+
/** Maximum number of corrections to return (default 10) */
|
|
210
|
+
limit?: number
|
|
211
|
+
/** Search query to find relevant corrections (optional, uses semantic search if not provided) */
|
|
212
|
+
query?: string
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
/**
|
|
216
|
+
* Input for rate_memory tool
|
|
217
|
+
*/
|
|
218
|
+
export interface RateMemoryInput {
|
|
219
|
+
/** ID of the memory to rate */
|
|
220
|
+
memory_id: string
|
|
221
|
+
/** Rating from 1 (not helpful) to 5 (very helpful) */
|
|
222
|
+
rating: 1 | 2 | 3 | 4 | 5
|
|
223
|
+
/** The original query that retrieved this memory */
|
|
224
|
+
query: string
|
|
225
|
+
/** Whether the memory was actually used */
|
|
226
|
+
was_used?: boolean
|
|
227
|
+
/** Optional feedback text */
|
|
228
|
+
feedback_text?: string
|
|
229
|
+
/** Project this feedback relates to */
|
|
230
|
+
project_name?: string
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
// ============================================================================
|
|
234
|
+
// Phase 15 - Advanced Intelligence Input Types
|
|
235
|
+
// ============================================================================
|
|
236
|
+
|
|
237
|
+
/**
|
|
238
|
+
* Input for get_decision_timeline tool
|
|
239
|
+
*/
|
|
240
|
+
export interface GetDecisionTimelineInput {
|
|
241
|
+
/** Filter timeline by project */
|
|
242
|
+
project_name?: string
|
|
243
|
+
/** Filter timeline by topic via semantic search */
|
|
244
|
+
topic?: string
|
|
245
|
+
/** Natural language time range */
|
|
246
|
+
time_range?: string
|
|
247
|
+
/** Maximum number of entries */
|
|
248
|
+
limit?: number
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
/**
|
|
252
|
+
* Input for analyze_decision_evolution tool
|
|
253
|
+
*/
|
|
254
|
+
export interface AnalyzeDecisionEvolutionInput {
|
|
255
|
+
/** The topic to analyze evolution for */
|
|
256
|
+
topic: string
|
|
257
|
+
/** Filter by project */
|
|
258
|
+
project_name?: string
|
|
259
|
+
/** Maximum decisions to analyze */
|
|
260
|
+
limit?: number
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
/**
|
|
264
|
+
* Input for detect_trends tool
|
|
265
|
+
*/
|
|
266
|
+
export interface DetectTrendsInput {
|
|
267
|
+
/** Filter by project */
|
|
268
|
+
project_name?: string
|
|
269
|
+
/** Analysis period in days */
|
|
270
|
+
period_days?: number
|
|
271
|
+
/** Minimum occurrences to include */
|
|
272
|
+
min_occurrences?: number
|
|
273
|
+
/** Maximum trends to return */
|
|
274
|
+
limit?: number
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
/**
|
|
278
|
+
* Input for what_if_analysis tool
|
|
279
|
+
*/
|
|
280
|
+
export interface WhatIfAnalysisInput {
|
|
281
|
+
/** The hypothetical change to analyze */
|
|
282
|
+
change: string
|
|
283
|
+
/** Filter by project */
|
|
284
|
+
project_name?: string
|
|
285
|
+
/** Maximum affected decisions to return */
|
|
286
|
+
max_results?: number
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
/**
|
|
290
|
+
* Input for get_recommendations tool
|
|
291
|
+
*/
|
|
292
|
+
export interface GetRecommendationsInput {
|
|
293
|
+
/** What to get recommendations for */
|
|
294
|
+
query: string
|
|
295
|
+
/** Filter by project */
|
|
296
|
+
project_name?: string
|
|
297
|
+
/** Maximum recommendations */
|
|
298
|
+
limit?: number
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
/**
|
|
302
|
+
* Input for find_cross_project_patterns tool
|
|
303
|
+
*/
|
|
304
|
+
export interface FindCrossProjectPatternsInput {
|
|
305
|
+
/** Minimum projects a pattern must appear in */
|
|
306
|
+
min_projects?: number
|
|
307
|
+
/** Maximum patterns to return */
|
|
308
|
+
limit?: number
|
|
309
|
+
/** Optional query to focus the search */
|
|
310
|
+
query?: string
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
// ============================================================================
|
|
314
|
+
// Phase 13 Retrieval Types
|
|
315
|
+
// ============================================================================
|
|
316
|
+
// Output Types
|
|
317
|
+
// ============================================================================
|
|
318
|
+
|
|
319
|
+
/**
|
|
320
|
+
* Standard MCP tool response format
|
|
321
|
+
*/
|
|
322
|
+
export interface ToolResponse {
|
|
323
|
+
content: Array<{
|
|
324
|
+
type: 'text'
|
|
325
|
+
text: string
|
|
326
|
+
}>
|
|
327
|
+
/** Whether the tool execution resulted in an error */
|
|
328
|
+
isError?: boolean
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
/**
|
|
332
|
+
* Project context returned by get_project_context
|
|
333
|
+
*/
|
|
334
|
+
export interface ProjectContext {
|
|
335
|
+
name: string
|
|
336
|
+
description: string
|
|
337
|
+
status: string
|
|
338
|
+
standards: string[]
|
|
339
|
+
recentProgress: string[]
|
|
340
|
+
memories?: Array<{
|
|
341
|
+
id: string
|
|
342
|
+
content: string
|
|
343
|
+
similarity: number
|
|
344
|
+
}>
|
|
345
|
+
}
|
|
346
|
+
|
|
347
|
+
/**
|
|
348
|
+
* Progress update result
|
|
349
|
+
*/
|
|
350
|
+
export interface ProgressUpdateResult {
|
|
351
|
+
success: boolean
|
|
352
|
+
message: string
|
|
353
|
+
timestamp: string
|
|
354
|
+
}
|
|
355
|
+
|
|
356
|
+
/**
|
|
357
|
+
* Decision storage result
|
|
358
|
+
*/
|
|
359
|
+
export interface DecisionStorageResult {
|
|
360
|
+
success: boolean
|
|
361
|
+
memoryId: string
|
|
362
|
+
message: string
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
/**
|
|
366
|
+
* Similar memory search result
|
|
367
|
+
*/
|
|
368
|
+
export interface SimilarMemory {
|
|
369
|
+
id: string
|
|
370
|
+
project: string
|
|
371
|
+
context: string
|
|
372
|
+
decision: string
|
|
373
|
+
reasoning: string
|
|
374
|
+
similarity: number
|
|
375
|
+
timestamp: string
|
|
376
|
+
}
|
|
377
|
+
|
|
378
|
+
/**
|
|
379
|
+
* Code standards response
|
|
380
|
+
*/
|
|
381
|
+
export interface CodeStandards {
|
|
382
|
+
global: string[]
|
|
383
|
+
projectSpecific: string[]
|
|
384
|
+
language?: string
|
|
385
|
+
}
|
|
386
|
+
|
|
387
|
+
/**
|
|
388
|
+
* Project list item
|
|
389
|
+
*/
|
|
390
|
+
export interface ProjectListItem {
|
|
391
|
+
name: string
|
|
392
|
+
status: 'active' | 'archived' | 'planning'
|
|
393
|
+
description: string
|
|
394
|
+
lastUpdated: string
|
|
395
|
+
}
|
|
396
|
+
|
|
397
|
+
// ============================================================================
|
|
398
|
+
// Union types for handler routing
|
|
399
|
+
// ============================================================================
|
|
400
|
+
|
|
401
|
+
export type ToolInput =
|
|
402
|
+
| GetProjectContextInput
|
|
403
|
+
| UpdateProgressInput
|
|
404
|
+
| RememberDecisionInput
|
|
405
|
+
| RecallSimilarInput
|
|
406
|
+
| GetCodeStandardsInput
|
|
407
|
+
| ListProjectsInput
|
|
408
|
+
| SmartContextInput
|
|
409
|
+
| AutoRememberInput
|
|
410
|
+
| GetPhase12StatusInput
|
|
411
|
+
| CreateProjectInput
|
|
412
|
+
| InitProjectInput
|