skill-tree 0.1.4 → 0.1.5
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 +49 -25
- package/dist/chunk-F3YEUQAP.mjs +654 -0
- package/dist/chunk-TEUB6DZR.mjs +6453 -0
- package/dist/chunk-TWPEHDW4.mjs +1067 -0
- package/dist/cli/index.js +1455 -810
- package/dist/cli/index.mjs +213 -298
- package/dist/index.d.mts +129 -200
- package/dist/index.d.ts +129 -200
- package/dist/index.js +6137 -6268
- package/dist/index.mjs +17 -15
- package/dist/sqlite-XJRPMNAJ.mjs +6 -0
- package/dist/sync-BSWMMDA6.mjs +14 -0
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -14,18 +14,10 @@ interface Skill {
|
|
|
14
14
|
version: string;
|
|
15
15
|
/** Short description optimized for semantic matching (1-2 sentences) */
|
|
16
16
|
description: string;
|
|
17
|
-
/**
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
|
|
21
|
-
/** Step-by-step solution */
|
|
22
|
-
solution: string;
|
|
23
|
-
/** How to verify the skill worked */
|
|
24
|
-
verification: string;
|
|
25
|
-
/** Concrete examples of usage */
|
|
26
|
-
examples: SkillExample[];
|
|
27
|
-
/** Additional notes, caveats, edge cases */
|
|
28
|
-
notes?: string;
|
|
17
|
+
/** Free-form markdown instructions (the SKILL.md body) */
|
|
18
|
+
instructions: string;
|
|
19
|
+
/** Related skill IDs */
|
|
20
|
+
related?: string[];
|
|
29
21
|
author: string;
|
|
30
22
|
tags: string[];
|
|
31
23
|
createdAt: Date;
|
|
@@ -84,22 +76,6 @@ interface ExpandTriggerConfig {
|
|
|
84
76
|
};
|
|
85
77
|
}
|
|
86
78
|
type SkillStatus = 'draft' | 'active' | 'deprecated' | 'experimental';
|
|
87
|
-
interface TriggerCondition {
|
|
88
|
-
/** Type of trigger */
|
|
89
|
-
type: 'error' | 'pattern' | 'context' | 'keyword' | 'custom';
|
|
90
|
-
/** The actual condition (regex, keyword, description) */
|
|
91
|
-
value: string;
|
|
92
|
-
/** Optional description of when this triggers */
|
|
93
|
-
description?: string;
|
|
94
|
-
}
|
|
95
|
-
interface SkillExample {
|
|
96
|
-
/** Description of the scenario */
|
|
97
|
-
scenario: string;
|
|
98
|
-
/** Input/before state */
|
|
99
|
-
before: string;
|
|
100
|
-
/** Output/after state */
|
|
101
|
-
after: string;
|
|
102
|
-
}
|
|
103
79
|
interface SkillMetrics {
|
|
104
80
|
/** Number of times this skill was used */
|
|
105
81
|
usageCount: number;
|
|
@@ -257,83 +233,6 @@ interface SkillFork {
|
|
|
257
233
|
/** When the fork happened */
|
|
258
234
|
forkedAt: Date;
|
|
259
235
|
}
|
|
260
|
-
/**
|
|
261
|
-
* Represents a parsed agent session/trajectory
|
|
262
|
-
*/
|
|
263
|
-
interface Trajectory {
|
|
264
|
-
/** Unique session identifier */
|
|
265
|
-
sessionId: string;
|
|
266
|
-
/** When the session started */
|
|
267
|
-
startedAt: Date;
|
|
268
|
-
/** When the session ended */
|
|
269
|
-
endedAt?: Date;
|
|
270
|
-
/** The messages/turns in this session */
|
|
271
|
-
turns: Turn[];
|
|
272
|
-
/** Overall session metadata */
|
|
273
|
-
metadata: TrajectoryMetadata;
|
|
274
|
-
/** Session outcome */
|
|
275
|
-
outcome?: TrajectoryOutcome;
|
|
276
|
-
}
|
|
277
|
-
interface Turn {
|
|
278
|
-
/** Turn index (0-based) */
|
|
279
|
-
index: number;
|
|
280
|
-
/** Role: user, assistant, system, tool */
|
|
281
|
-
role: 'user' | 'assistant' | 'system' | 'tool';
|
|
282
|
-
/** Content of the turn */
|
|
283
|
-
content: string;
|
|
284
|
-
/** Tool calls made in this turn */
|
|
285
|
-
toolCalls?: ToolCall[];
|
|
286
|
-
/** Tool results returned in this turn */
|
|
287
|
-
toolResults?: ToolResult[];
|
|
288
|
-
/** Timestamp of this turn */
|
|
289
|
-
timestamp?: Date;
|
|
290
|
-
/** Extension data from custom extractors */
|
|
291
|
-
[key: string]: unknown;
|
|
292
|
-
}
|
|
293
|
-
interface ToolCall {
|
|
294
|
-
/** Tool name */
|
|
295
|
-
name: string;
|
|
296
|
-
/** Tool input/arguments */
|
|
297
|
-
input: Record<string, unknown>;
|
|
298
|
-
/** Unique call ID */
|
|
299
|
-
callId?: string;
|
|
300
|
-
}
|
|
301
|
-
interface ToolResult {
|
|
302
|
-
/** Corresponding call ID */
|
|
303
|
-
callId?: string;
|
|
304
|
-
/** Tool name */
|
|
305
|
-
name: string;
|
|
306
|
-
/** Result content */
|
|
307
|
-
output: string;
|
|
308
|
-
/** Whether the tool succeeded */
|
|
309
|
-
success: boolean;
|
|
310
|
-
/** Error message if failed */
|
|
311
|
-
error?: string;
|
|
312
|
-
}
|
|
313
|
-
interface TrajectoryMetadata {
|
|
314
|
-
/** Agent type (claude-code, custom, etc.) */
|
|
315
|
-
agentType: string;
|
|
316
|
-
/** Model used */
|
|
317
|
-
model?: string;
|
|
318
|
-
/** Working directory */
|
|
319
|
-
workingDirectory?: string;
|
|
320
|
-
/** Project/repo name */
|
|
321
|
-
projectName?: string;
|
|
322
|
-
/** Custom metadata */
|
|
323
|
-
custom?: Record<string, unknown>;
|
|
324
|
-
}
|
|
325
|
-
interface TrajectoryOutcome {
|
|
326
|
-
/** Did the session succeed in its goal? */
|
|
327
|
-
success: boolean;
|
|
328
|
-
/** Summary of what was accomplished */
|
|
329
|
-
summary?: string;
|
|
330
|
-
/** Files modified */
|
|
331
|
-
filesModified?: string[];
|
|
332
|
-
/** Errors encountered */
|
|
333
|
-
errors?: string[];
|
|
334
|
-
/** User satisfaction signal if available */
|
|
335
|
-
userSatisfaction?: 'positive' | 'negative' | 'neutral';
|
|
336
|
-
}
|
|
337
236
|
interface StorageAdapter {
|
|
338
237
|
/** Initialize the storage */
|
|
339
238
|
initialize(): Promise<void>;
|
|
@@ -402,6 +301,23 @@ type SkillTreeEvent = {
|
|
|
402
301
|
skillId: string;
|
|
403
302
|
};
|
|
404
303
|
type SkillTreeEventHandler = (event: SkillTreeEvent) => void | Promise<void>;
|
|
304
|
+
/**
|
|
305
|
+
* Configuration for materializing skills to agent-discoverable locations
|
|
306
|
+
*/
|
|
307
|
+
interface MaterializationConfig {
|
|
308
|
+
/** Enable automatic materialization on skill changes (default: false) */
|
|
309
|
+
enabled: boolean;
|
|
310
|
+
/** Materialization mode: 'symlink' creates symlinks, 'copy' copies directories (default: 'symlink') */
|
|
311
|
+
mode?: 'symlink' | 'copy';
|
|
312
|
+
/** Additional directories to symlink/copy skill dirs into (e.g. ['.claude/skills', '.agent/skills']) */
|
|
313
|
+
symlinkPaths?: string[];
|
|
314
|
+
/** Path to write AGENTS.md (e.g. './AGENTS.md'). If set, auto-regenerates on changes */
|
|
315
|
+
agentsMdPath?: string;
|
|
316
|
+
/** Format for AGENTS.md generation (default: 'xml') */
|
|
317
|
+
agentsMdFormat?: 'xml' | 'markdown' | 'json';
|
|
318
|
+
/** Debounce interval in ms for batch updates (default: 500) */
|
|
319
|
+
debounceMs?: number;
|
|
320
|
+
}
|
|
405
321
|
|
|
406
322
|
/**
|
|
407
323
|
* Semantic versioning utilities
|
|
@@ -487,10 +403,6 @@ type MergeStrategy = 'source' | 'target' | 'combine' | 'newest' | 'longest' | 'u
|
|
|
487
403
|
interface MergeConfig {
|
|
488
404
|
/** Default strategy for text fields */
|
|
489
405
|
textStrategy?: MergeStrategy;
|
|
490
|
-
/** Strategy for trigger conditions */
|
|
491
|
-
triggerStrategy?: MergeStrategy;
|
|
492
|
-
/** Strategy for examples */
|
|
493
|
-
exampleStrategy?: MergeStrategy;
|
|
494
406
|
/** Strategy for tags */
|
|
495
407
|
tagStrategy?: MergeStrategy;
|
|
496
408
|
/** Fields to include in merge (defaults to all) */
|
|
@@ -623,8 +535,6 @@ declare class SkillMerger {
|
|
|
623
535
|
private getStrategyForField;
|
|
624
536
|
private mergeField;
|
|
625
537
|
private mergeArrays;
|
|
626
|
-
private mergeTriggerConditions;
|
|
627
|
-
private mergeExamples;
|
|
628
538
|
private mergeStrings;
|
|
629
539
|
private calculateSimilarity;
|
|
630
540
|
private buildMergeSuggestion;
|
|
@@ -883,13 +793,17 @@ interface SkillSyncState {
|
|
|
883
793
|
}
|
|
884
794
|
|
|
885
795
|
/**
|
|
886
|
-
* Types for the hooks
|
|
796
|
+
* Types for the hooks system
|
|
797
|
+
*
|
|
798
|
+
* Session lifecycle tracking belongs to sessionlog.
|
|
799
|
+
* Skill runtime hooks (matched/applied/feedback) belong to cognitive-core.
|
|
800
|
+
* skill-tree hooks cover storage and CRUD lifecycle only.
|
|
887
801
|
*/
|
|
888
802
|
|
|
889
803
|
/**
|
|
890
804
|
* Events that can trigger hooks
|
|
891
805
|
*/
|
|
892
|
-
type HookEvent = 'storage:before-save' | 'storage:after-save' | 'storage:before-delete' | 'storage:after-delete' | '
|
|
806
|
+
type HookEvent = 'storage:before-save' | 'storage:after-save' | 'storage:before-delete' | 'storage:after-delete' | 'skill:created' | 'skill:updated' | 'skill:deprecated' | 'skill:deleted';
|
|
893
807
|
/**
|
|
894
808
|
* Priority levels for hook execution
|
|
895
809
|
*/
|
|
@@ -916,39 +830,6 @@ interface StorageHookContext extends BaseHookContext {
|
|
|
916
830
|
/** Whether the operation was successful */
|
|
917
831
|
success?: boolean;
|
|
918
832
|
}
|
|
919
|
-
/**
|
|
920
|
-
* Context for session hooks
|
|
921
|
-
*/
|
|
922
|
-
interface SessionHookContext extends BaseHookContext {
|
|
923
|
-
event: 'session:start' | 'session:end' | 'session:message';
|
|
924
|
-
sessionId: string;
|
|
925
|
-
/** Available on session:end */
|
|
926
|
-
trajectory?: Trajectory;
|
|
927
|
-
/** Message content (on session:message) */
|
|
928
|
-
message?: {
|
|
929
|
-
role: 'user' | 'assistant';
|
|
930
|
-
content: string;
|
|
931
|
-
};
|
|
932
|
-
}
|
|
933
|
-
/**
|
|
934
|
-
* Context for skill runtime hooks (activation/matching/usage)
|
|
935
|
-
*/
|
|
936
|
-
interface SkillRuntimeHookContext extends BaseHookContext {
|
|
937
|
-
event: 'skill:activated' | 'skill:matched' | 'skill:applied' | 'skill:feedback';
|
|
938
|
-
skill: Skill;
|
|
939
|
-
/** Match score (on skill:matched) */
|
|
940
|
-
matchScore?: number;
|
|
941
|
-
/** Application result (on skill:applied) */
|
|
942
|
-
applicationResult?: {
|
|
943
|
-
success: boolean;
|
|
944
|
-
output?: string;
|
|
945
|
-
};
|
|
946
|
-
/** Feedback data (on skill:feedback) */
|
|
947
|
-
feedback?: {
|
|
948
|
-
type: 'positive' | 'negative' | 'neutral';
|
|
949
|
-
comment?: string;
|
|
950
|
-
};
|
|
951
|
-
}
|
|
952
833
|
/**
|
|
953
834
|
* Context for skill CRUD hooks (create/update/deprecate/delete)
|
|
954
835
|
*/
|
|
@@ -960,15 +841,10 @@ interface SkillCrudHookContext extends BaseHookContext {
|
|
|
960
841
|
/** Deprecation reason (on skill:deprecated) */
|
|
961
842
|
deprecationReason?: string;
|
|
962
843
|
}
|
|
963
|
-
/**
|
|
964
|
-
* Legacy alias for backward compatibility
|
|
965
|
-
* @deprecated Use SkillRuntimeHookContext instead
|
|
966
|
-
*/
|
|
967
|
-
type SkillHookContext = SkillRuntimeHookContext;
|
|
968
844
|
/**
|
|
969
845
|
* Union of all hook contexts
|
|
970
846
|
*/
|
|
971
|
-
type HookContext = StorageHookContext |
|
|
847
|
+
type HookContext = StorageHookContext | SkillCrudHookContext;
|
|
972
848
|
/**
|
|
973
849
|
* Result from a hook handler
|
|
974
850
|
*/
|
|
@@ -2092,22 +1968,10 @@ declare class RemoteManager {
|
|
|
2092
1968
|
* Parse YAML frontmatter (simple implementation)
|
|
2093
1969
|
*/
|
|
2094
1970
|
private parseYamlFrontmatter;
|
|
2095
|
-
/**
|
|
2096
|
-
* Extract a section from markdown body
|
|
2097
|
-
*/
|
|
2098
|
-
private extractSection;
|
|
2099
|
-
/**
|
|
2100
|
-
* Parse trigger conditions from metadata
|
|
2101
|
-
*/
|
|
2102
|
-
private parseTriggerConditions;
|
|
2103
1971
|
/**
|
|
2104
1972
|
* Parse tags from metadata
|
|
2105
1973
|
*/
|
|
2106
1974
|
private parseTags;
|
|
2107
|
-
/**
|
|
2108
|
-
* Parse examples from body
|
|
2109
|
-
*/
|
|
2110
|
-
private parseExamples;
|
|
2111
1975
|
/**
|
|
2112
1976
|
* Serialize a skill to SKILL.md format
|
|
2113
1977
|
*/
|
|
@@ -2363,8 +2227,6 @@ declare class LineageTracker {
|
|
|
2363
2227
|
* Get suggested next version based on changes
|
|
2364
2228
|
*/
|
|
2365
2229
|
suggestNextVersion(skillId: string, changes: VersionChanges): Promise<string>;
|
|
2366
|
-
private mergeTriggerConditions;
|
|
2367
|
-
private mergeExamples;
|
|
2368
2230
|
private mergeText;
|
|
2369
2231
|
private diffSkills;
|
|
2370
2232
|
}
|
|
@@ -2438,6 +2300,8 @@ interface SkillBankConfig {
|
|
|
2438
2300
|
/** Pull remote changes on initialize() (default: false) */
|
|
2439
2301
|
pullOnInit?: boolean;
|
|
2440
2302
|
};
|
|
2303
|
+
/** Materialization configuration for agent-discoverable skill output */
|
|
2304
|
+
materialization?: MaterializationConfig;
|
|
2441
2305
|
}
|
|
2442
2306
|
/**
|
|
2443
2307
|
* Main SkillBank class
|
|
@@ -2459,6 +2323,8 @@ declare class SkillBank {
|
|
|
2459
2323
|
private syncManager?;
|
|
2460
2324
|
/** Whether to pull on initialize */
|
|
2461
2325
|
private syncPullOnInit;
|
|
2326
|
+
/** Materializer for agent-discoverable output */
|
|
2327
|
+
private materializer?;
|
|
2462
2328
|
constructor(config?: SkillBankConfig);
|
|
2463
2329
|
/**
|
|
2464
2330
|
* Initialize the skill bank (required before use)
|
|
@@ -2872,12 +2738,6 @@ interface AgentsGeneratorConfig {
|
|
|
2872
2738
|
includeIds?: boolean;
|
|
2873
2739
|
/** Include version information (default: true) */
|
|
2874
2740
|
includeVersions?: boolean;
|
|
2875
|
-
/** Include trigger conditions (default: true) */
|
|
2876
|
-
includeTriggers?: boolean;
|
|
2877
|
-
/** Include examples (default: true) */
|
|
2878
|
-
includeExamples?: boolean;
|
|
2879
|
-
/** Maximum examples per skill (default: 3) */
|
|
2880
|
-
maxExamples?: number;
|
|
2881
2741
|
/** Group skills by tags (default: false) */
|
|
2882
2742
|
groupByTags?: boolean;
|
|
2883
2743
|
/** Custom header content */
|
|
@@ -2912,26 +2772,20 @@ interface ParsedAgentSkill {
|
|
|
2912
2772
|
name: string;
|
|
2913
2773
|
/** Skill description */
|
|
2914
2774
|
description: string;
|
|
2915
|
-
/**
|
|
2775
|
+
/** Instructions content */
|
|
2776
|
+
instructions?: string;
|
|
2777
|
+
/** Problem this skill solves (legacy, used during parsing) */
|
|
2916
2778
|
problem?: string;
|
|
2917
|
-
/** Solution steps */
|
|
2779
|
+
/** Solution steps (legacy, used during parsing) */
|
|
2918
2780
|
solution?: string;
|
|
2919
|
-
/** Verification steps */
|
|
2781
|
+
/** Verification steps (legacy, used during parsing) */
|
|
2920
2782
|
verification?: string;
|
|
2921
|
-
/** Additional notes */
|
|
2783
|
+
/** Additional notes (legacy, used during parsing) */
|
|
2922
2784
|
notes?: string;
|
|
2923
|
-
/** Trigger conditions */
|
|
2924
|
-
triggers?: string[];
|
|
2925
2785
|
/** Tags extracted from content */
|
|
2926
2786
|
tags?: string[];
|
|
2927
2787
|
/** Version (if present) */
|
|
2928
2788
|
version?: string;
|
|
2929
|
-
/** Examples */
|
|
2930
|
-
examples?: Array<{
|
|
2931
|
-
scenario: string;
|
|
2932
|
-
before?: string;
|
|
2933
|
-
after?: string;
|
|
2934
|
-
}>;
|
|
2935
2789
|
/** Raw content block */
|
|
2936
2790
|
rawContent: string;
|
|
2937
2791
|
}
|
|
@@ -3080,10 +2934,6 @@ declare class AgentsParser {
|
|
|
3080
2934
|
* Generate ID from skill name
|
|
3081
2935
|
*/
|
|
3082
2936
|
private generateId;
|
|
3083
|
-
/**
|
|
3084
|
-
* Infer trigger type from content
|
|
3085
|
-
*/
|
|
3086
|
-
private inferTriggerType;
|
|
3087
2937
|
/**
|
|
3088
2938
|
* Extract header content
|
|
3089
2939
|
*/
|
|
@@ -3173,6 +3023,9 @@ declare function importFromAgentsMd(filePath: string, storage: StorageAdapter, o
|
|
|
3173
3023
|
|
|
3174
3024
|
/**
|
|
3175
3025
|
* Built-in hooks for common use cases
|
|
3026
|
+
*
|
|
3027
|
+
* Runtime metrics hooks (matched/applied/feedback) have moved to cognitive-core
|
|
3028
|
+
* which handles skill usage tracking via sessionlog integration.
|
|
3176
3029
|
*/
|
|
3177
3030
|
|
|
3178
3031
|
/**
|
|
@@ -3191,10 +3044,6 @@ declare function createSaveValidationHook(options: {
|
|
|
3191
3044
|
maxDescriptionLength?: number;
|
|
3192
3045
|
requireTriggers?: boolean;
|
|
3193
3046
|
}): RegisterHookOptions;
|
|
3194
|
-
/**
|
|
3195
|
-
* Creates a hook that tracks skill usage metrics
|
|
3196
|
-
*/
|
|
3197
|
-
declare function createMetricsHook(updateMetrics: (skillId: string, event: 'matched' | 'applied' | 'feedback', data?: unknown) => Promise<void>): RegisterHookOptions;
|
|
3198
3047
|
/**
|
|
3199
3048
|
* Combines multiple hook handlers into one
|
|
3200
3049
|
*/
|
|
@@ -3292,8 +3141,6 @@ interface ViewRendererConfig {
|
|
|
3292
3141
|
includeTokenEstimates?: boolean;
|
|
3293
3142
|
/** Maximum summary length (characters) */
|
|
3294
3143
|
maxSummaryLength?: number;
|
|
3295
|
-
/** Include examples in expanded content */
|
|
3296
|
-
includeExamples?: boolean;
|
|
3297
3144
|
}
|
|
3298
3145
|
/**
|
|
3299
3146
|
* Renders loadout state for agent consumption
|
|
@@ -3325,10 +3172,6 @@ declare class ViewRenderer {
|
|
|
3325
3172
|
* Get summary for a skill (short description)
|
|
3326
3173
|
*/
|
|
3327
3174
|
private getSummary;
|
|
3328
|
-
/**
|
|
3329
|
-
* Render skill content for expanded view
|
|
3330
|
-
*/
|
|
3331
|
-
private renderSkillContent;
|
|
3332
3175
|
/**
|
|
3333
3176
|
* Escape special XML characters
|
|
3334
3177
|
*/
|
|
@@ -3483,6 +3326,93 @@ declare function getBuiltInProfile(name: string): LoadoutCriteria | undefined;
|
|
|
3483
3326
|
*/
|
|
3484
3327
|
declare function listBuiltInProfiles(): string[];
|
|
3485
3328
|
|
|
3329
|
+
/**
|
|
3330
|
+
* Materializer - Keeps agent-discoverable filesystem representations
|
|
3331
|
+
* in sync with the skill bank.
|
|
3332
|
+
*
|
|
3333
|
+
* Supports two modes:
|
|
3334
|
+
* - 'symlink': Creates symlinks from discovery paths into .skilltree/skills/
|
|
3335
|
+
* - 'copy': Copies skill directories to discovery paths
|
|
3336
|
+
*
|
|
3337
|
+
* Also auto-regenerates AGENTS.md on skill changes with marker-based sections.
|
|
3338
|
+
*/
|
|
3339
|
+
|
|
3340
|
+
declare class Materializer {
|
|
3341
|
+
private storage;
|
|
3342
|
+
private basePath;
|
|
3343
|
+
private config;
|
|
3344
|
+
private debounceTimer;
|
|
3345
|
+
private pendingRegen;
|
|
3346
|
+
private regenerating;
|
|
3347
|
+
private watcher;
|
|
3348
|
+
private watchDebounceTimer;
|
|
3349
|
+
constructor(storage: StorageAdapter, basePath: string, config: MaterializationConfig);
|
|
3350
|
+
private get mode();
|
|
3351
|
+
private get skillsSourceDir();
|
|
3352
|
+
/**
|
|
3353
|
+
* Initial materialization: create all symlinks/copies + generate AGENTS.md
|
|
3354
|
+
*/
|
|
3355
|
+
initialize(): Promise<void>;
|
|
3356
|
+
/**
|
|
3357
|
+
* Called when a skill is created or updated
|
|
3358
|
+
*/
|
|
3359
|
+
onSkillChanged(skillId: string): Promise<void>;
|
|
3360
|
+
/**
|
|
3361
|
+
* Called when a skill is deleted
|
|
3362
|
+
*/
|
|
3363
|
+
onSkillDeleted(skillId: string): Promise<void>;
|
|
3364
|
+
/**
|
|
3365
|
+
* Materialize a skill to all configured paths (symlink or copy)
|
|
3366
|
+
*/
|
|
3367
|
+
private ensureMaterialized;
|
|
3368
|
+
/**
|
|
3369
|
+
* Remove a materialized skill from all configured paths
|
|
3370
|
+
*/
|
|
3371
|
+
private removeMaterialized;
|
|
3372
|
+
/**
|
|
3373
|
+
* Create or verify a symlink
|
|
3374
|
+
*/
|
|
3375
|
+
private ensureSymlink;
|
|
3376
|
+
/**
|
|
3377
|
+
* Copy a skill directory, adding a marker file so we know we manage it
|
|
3378
|
+
*/
|
|
3379
|
+
private copyDir;
|
|
3380
|
+
/**
|
|
3381
|
+
* Schedule debounced AGENTS.md regeneration
|
|
3382
|
+
*/
|
|
3383
|
+
private scheduleAgentsMdRegen;
|
|
3384
|
+
/**
|
|
3385
|
+
* Regenerate AGENTS.md with marker-based section replacement
|
|
3386
|
+
*/
|
|
3387
|
+
regenerateAgentsMd(): Promise<void>;
|
|
3388
|
+
private _doRegenerateAgentsMd;
|
|
3389
|
+
/**
|
|
3390
|
+
* Remove stale entries (symlinks or copies) that point to non-existent skills
|
|
3391
|
+
*/
|
|
3392
|
+
cleanup(): Promise<void>;
|
|
3393
|
+
/**
|
|
3394
|
+
* Start watching .skilltree/skills/ for external changes.
|
|
3395
|
+
* Re-materializes when files are added/changed/removed outside the SkillBank API.
|
|
3396
|
+
*/
|
|
3397
|
+
watch(): void;
|
|
3398
|
+
/**
|
|
3399
|
+
* Stop watching for file changes
|
|
3400
|
+
*/
|
|
3401
|
+
unwatch(): void;
|
|
3402
|
+
/**
|
|
3403
|
+
* Flush any pending debounced operations (useful for testing)
|
|
3404
|
+
*/
|
|
3405
|
+
flush(): Promise<void>;
|
|
3406
|
+
/**
|
|
3407
|
+
* Tear down: cancel pending timers and stop watcher
|
|
3408
|
+
*/
|
|
3409
|
+
shutdown(): void;
|
|
3410
|
+
/**
|
|
3411
|
+
* Resolve a path relative to basePath, handling ~ expansion
|
|
3412
|
+
*/
|
|
3413
|
+
private resolvePath;
|
|
3414
|
+
}
|
|
3415
|
+
|
|
3486
3416
|
/**
|
|
3487
3417
|
* Git Sync Adapter
|
|
3488
3418
|
*
|
|
@@ -3547,7 +3477,6 @@ declare class GitSyncAdapter {
|
|
|
3547
3477
|
private applyStrategy;
|
|
3548
3478
|
private getConflictingFields;
|
|
3549
3479
|
private parseSkillContent;
|
|
3550
|
-
private extractSection;
|
|
3551
3480
|
private writeSkill;
|
|
3552
3481
|
private buildSkillContent;
|
|
3553
3482
|
private buildCommitMessage;
|
|
@@ -3650,4 +3579,4 @@ declare function createDefaultSyncConfig(remoteUrl: string, agentId: string, opt
|
|
|
3650
3579
|
*/
|
|
3651
3580
|
declare const VERSION = "0.1.0";
|
|
3652
3581
|
|
|
3653
|
-
export { type AgentConfig, AgentsGenerator, type AgentsGeneratorConfig, AgentsParser, AgentsSync, type BaseHookContext, type BumpType, CachedStorageAdapter, type CachedStorageConfig, type ConflictConfig, type ConflictResolution$1 as ConflictResolution, ConflictStore, type ConflictStrategy, DEFAULT_AGENTS_CONFIG, type DiscoveredSkill, type EvictionStrategy, type ExpandTrigger, type ExpandTriggerConfig, type FederatedRemoteConfig, type FederationEvent, type FederationEventHandler, FederationManager, type FederationManagerOptions, type FetchResult, type ForkOptions, GitSyncAdapter, type GitSyncAdapterOptions, type SyncResult$1 as GitSyncResult, type GraphServerConfig, type HookContext, type HookEvent, type HookExecutionResult, type HookHandler, type HookPriority, HookRegistry, type HookResult, type ImportMode, type ImportOptions, type ImportResult, LineageTracker, type LineageTree, LoadoutCompiler, type LoadoutCompilerConfig, type LoadoutCriteria, type LoadoutSource, type LoadoutState, type LoadoutView, MemoryStorageAdapter, type MergeConfig, type MergeConflict, type MergePreview, type MergeResult, type MergeStrategy, type MergeSuggestion, type MigrationOptions, type MigrationProgressItem, type MigrationResult, type NewVersionOptions, type ParsedAgentSkill, type ParsedAgentsFile, type ParsedVersion, type ProjectContext, ProjectDetector, type PullOptions, type PullUpstreamOptions, type PullUpstreamResult, type PushOptions, type RegisterHookOptions, type RegisteredHook, type RemoteConfig, RemoteManager, type RemoteState, RemoteStore, type RollbackOptions, type ServingEvent, type ServingEventHandler, type ShareOptions, type ShareResult, type Skill, type SkillAccessControl, SkillBank, type SkillBankConfig, type SkillBankStats, type SkillChange, type SkillConflict, type
|
|
3582
|
+
export { type AgentConfig, AgentsGenerator, type AgentsGeneratorConfig, AgentsParser, AgentsSync, type BaseHookContext, type BumpType, CachedStorageAdapter, type CachedStorageConfig, type ConflictConfig, type ConflictResolution$1 as ConflictResolution, ConflictStore, type ConflictStrategy, DEFAULT_AGENTS_CONFIG, type DiscoveredSkill, type EvictionStrategy, type ExpandTrigger, type ExpandTriggerConfig, type FederatedRemoteConfig, type FederationEvent, type FederationEventHandler, FederationManager, type FederationManagerOptions, type FetchResult, type ForkOptions, GitSyncAdapter, type GitSyncAdapterOptions, type SyncResult$1 as GitSyncResult, type GraphServerConfig, type HookContext, type HookEvent, type HookExecutionResult, type HookHandler, type HookPriority, HookRegistry, type HookResult, type ImportMode, type ImportOptions, type ImportResult, LineageTracker, type LineageTree, LoadoutCompiler, type LoadoutCompilerConfig, type LoadoutCriteria, type LoadoutSource, type LoadoutState, type LoadoutView, type MaterializationConfig, Materializer, MemoryStorageAdapter, type MergeConfig, type MergeConflict, type MergePreview, type MergeResult, type MergeStrategy, type MergeSuggestion, type MigrationOptions, type MigrationProgressItem, type MigrationResult, type NewVersionOptions, type ParsedAgentSkill, type ParsedAgentsFile, type ParsedVersion, type ProjectContext, ProjectDetector, type PullOptions, type PullUpstreamOptions, type PullUpstreamResult, type PushOptions, type RegisterHookOptions, type RegisteredHook, type RemoteConfig, RemoteManager, type RemoteState, RemoteStore, type RollbackOptions, type ServingEvent, type ServingEventHandler, type ShareOptions, type ShareResult, type Skill, type SkillAccessControl, SkillBank, type SkillBankConfig, type SkillBankStats, type SkillChange, type SkillConflict, type SkillCrudHookContext, type SkillDiffChanges, type SkillFilter, type SkillFork, type SkillFormat, SkillGraphServer, type SkillLineage, type SkillMergeResult, SkillMerger, type SkillMetrics, type SkillNamespace, type SkillScope, type SkillSelector, type SkillServingMetadata, type SkillSource, type SkillState, type SkillStatus, type SkillSummary, type SkillSyncState, type SkillTreeEvent, type SkillTreeEventHandler, type SkillUpstream, type SkillVersion, type SkillVisibility, type StorageAdapter, type StorageConfig, type StorageHookContext, type SyncBehaviorConfig, type SyncConfig, type ConflictResolution as SyncConflictResolution, type SyncError, SyncManager, type SyncManagerOptions, type SyncOptions, type SyncResult, type SyncState, type SyncStatus, type UpstreamUpdate, VERSION, type VersionChanges, type VersionDiff, ViewRenderer, type ViewRendererConfig, builtInProfiles, bumpVersion, codeReviewProfile, combineHandlers, compareVersions, conditionalHook, createAgentsGenerator, createAgentsParser, createAgentsSync, createBackupHook, createConflictStore, createDefaultSyncConfig, createFederationManager, createGitSyncAdapter, createLoggingHook, createSaveValidationHook, createSkillBank, createSkillMerger, createSyncManager, debuggingProfile, devopsProfile, discoverSkills, documentationProfile, formatVersion, generateAgentsMd, getBuiltInProfile, getLatestVersion, hasSkilltreeDir, hookRegistry, implementationProfile, importFromAgentsMd, inferBumpType, isValidVersion, listBuiltInProfiles, migrateStorage, parseVersion, refactoringProfile, satisfiesRange, securityProfile, sortVersions, testingProfile, writeAgentsMd };
|