@ebowwa/daemons 0.5.0 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/dist/agent.d.ts +37 -0
  2. package/dist/agent.d.ts.map +1 -0
  3. package/dist/bin/discord-cli.js +25 -60
  4. package/dist/bin/telegram-cli.js +25 -60
  5. package/dist/channels/base.d.ts +163 -0
  6. package/dist/channels/base.d.ts.map +1 -0
  7. package/dist/channels/discord.d.ts +61 -0
  8. package/dist/channels/discord.d.ts.map +1 -0
  9. package/dist/channels/index.d.ts +55 -0
  10. package/dist/channels/index.d.ts.map +1 -0
  11. package/dist/channels/telegram.d.ts +113 -0
  12. package/dist/channels/telegram.d.ts.map +1 -0
  13. package/dist/daemon.d.ts +119 -0
  14. package/dist/daemon.d.ts.map +1 -0
  15. package/dist/hooks.d.ts +34 -0
  16. package/dist/hooks.d.ts.map +1 -0
  17. package/dist/index.d.ts +24 -0
  18. package/dist/index.d.ts.map +1 -0
  19. package/dist/index.js +25 -60
  20. package/dist/memory.d.ts +151 -0
  21. package/dist/memory.d.ts.map +1 -0
  22. package/dist/skills/coding/commit.d.ts +31 -0
  23. package/dist/skills/coding/commit.d.ts.map +1 -0
  24. package/dist/skills/coding/execute-subtask.d.ts +30 -0
  25. package/dist/skills/coding/execute-subtask.d.ts.map +1 -0
  26. package/dist/skills/coding/fix-issues.d.ts +29 -0
  27. package/dist/skills/coding/fix-issues.d.ts.map +1 -0
  28. package/dist/skills/coding/index.d.ts +21 -0
  29. package/dist/skills/coding/index.d.ts.map +1 -0
  30. package/dist/skills/coding/plan-task.d.ts +38 -0
  31. package/dist/skills/coding/plan-task.d.ts.map +1 -0
  32. package/dist/skills/coding/quality-check.d.ts +35 -0
  33. package/dist/skills/coding/quality-check.d.ts.map +1 -0
  34. package/dist/skills/index.d.ts +38 -0
  35. package/dist/skills/index.d.ts.map +1 -0
  36. package/dist/skills/registry.d.ts +95 -0
  37. package/dist/skills/registry.d.ts.map +1 -0
  38. package/dist/skills/shared/index.d.ts +16 -0
  39. package/dist/skills/shared/index.d.ts.map +1 -0
  40. package/dist/skills/shared/reflect.d.ts +42 -0
  41. package/dist/skills/shared/reflect.d.ts.map +1 -0
  42. package/dist/skills/shared/review.d.ts +42 -0
  43. package/dist/skills/shared/review.d.ts.map +1 -0
  44. package/dist/skills/shared/trajectory.d.ts +80 -0
  45. package/dist/skills/shared/trajectory.d.ts.map +1 -0
  46. package/dist/skills/trading/analyze-market.d.ts +43 -0
  47. package/dist/skills/trading/analyze-market.d.ts.map +1 -0
  48. package/dist/skills/trading/check-risk.d.ts +33 -0
  49. package/dist/skills/trading/check-risk.d.ts.map +1 -0
  50. package/dist/skills/trading/execute-trade.d.ts +38 -0
  51. package/dist/skills/trading/execute-trade.d.ts.map +1 -0
  52. package/dist/skills/trading/generate-signal.d.ts +57 -0
  53. package/dist/skills/trading/generate-signal.d.ts.map +1 -0
  54. package/dist/skills/trading/index.d.ts +21 -0
  55. package/dist/skills/trading/index.d.ts.map +1 -0
  56. package/dist/skills/trading/monitor-position.d.ts +37 -0
  57. package/dist/skills/trading/monitor-position.d.ts.map +1 -0
  58. package/dist/skills/types.d.ts +173 -0
  59. package/dist/skills/types.d.ts.map +1 -0
  60. package/dist/skills/workflows.d.ts +36 -0
  61. package/dist/skills/workflows.d.ts.map +1 -0
  62. package/dist/state.d.ts +31 -0
  63. package/dist/state.d.ts.map +1 -0
  64. package/dist/tools.d.ts +42 -0
  65. package/dist/tools.d.ts.map +1 -0
  66. package/dist/types.d.ts +281 -0
  67. package/dist/types.d.ts.map +1 -0
  68. package/dist/workflow.d.ts +182 -0
  69. package/dist/workflow.d.ts.map +1 -0
  70. package/dist/workflows/coding.d.ts +79 -0
  71. package/dist/workflows/coding.d.ts.map +1 -0
  72. package/dist/workflows/index.d.ts +24 -0
  73. package/dist/workflows/index.d.ts.map +1 -0
  74. package/dist/workflows/trading.d.ts +72 -0
  75. package/dist/workflows/trading.d.ts.map +1 -0
  76. package/package.json +9 -2
  77. package/src/channels/base.ts +1 -0
  78. package/src/channels/telegram.ts +2 -1
  79. package/src/skills/shared/trajectory.ts +8 -1
@@ -0,0 +1,80 @@
1
+ /**
2
+ * GLM Daemon - Trajectory Skill
3
+ *
4
+ * Integration with @ebowwa/trajectory for learning from execution patterns.
5
+ * Provides:
6
+ * - Query learned patterns by domain
7
+ * - Record execution results for learning
8
+ * - Provide context about past successful patterns
9
+ */
10
+ import { z } from "zod";
11
+ import type { Skill } from "../types.js";
12
+ /**
13
+ * Trajectory skill parameters
14
+ */
15
+ declare const TrajectoryParams: z.ZodDiscriminatedUnion<[z.ZodObject<{
16
+ action: z.ZodLiteral<"query">;
17
+ domain: z.ZodString;
18
+ minSuccessRate: z.ZodOptional<z.ZodNumber>;
19
+ limit: z.ZodOptional<z.ZodNumber>;
20
+ }, z.core.$strip>, z.ZodObject<{
21
+ action: z.ZodLiteral<"record">;
22
+ execution: z.ZodObject<{
23
+ primitiveId: z.ZodString;
24
+ package: z.ZodString;
25
+ version: z.ZodString;
26
+ inputs: z.ZodRecord<z.ZodString, z.ZodUnknown>;
27
+ output: z.ZodUnknown;
28
+ durationNs: z.ZodNumber;
29
+ verified: z.ZodBoolean;
30
+ invariantsChecked: z.ZodOptional<z.ZodArray<z.ZodString>>;
31
+ verificationErrors: z.ZodOptional<z.ZodArray<z.ZodString>>;
32
+ specId: z.ZodOptional<z.ZodString>;
33
+ sessionId: z.ZodOptional<z.ZodString>;
34
+ }, z.core.$strip>;
35
+ }, z.core.$strip>, z.ZodObject<{
36
+ action: z.ZodLiteral<"context">;
37
+ task: z.ZodString;
38
+ domain: z.ZodOptional<z.ZodString>;
39
+ }, z.core.$strip>, z.ZodObject<{
40
+ action: z.ZodLiteral<"stats">;
41
+ }, z.core.$strip>], "action">;
42
+ /**
43
+ * Pattern info from trajectory memory
44
+ */
45
+ interface LearnedPattern {
46
+ primitiveSequence: string[];
47
+ avgDurationMs: number;
48
+ successRate: number;
49
+ }
50
+ /**
51
+ * Trajectory skill result data
52
+ */
53
+ interface TrajectoryData {
54
+ action: "query" | "record" | "context" | "stats";
55
+ patterns?: LearnedPattern[];
56
+ recorded?: {
57
+ executionId: string;
58
+ timestamp: number;
59
+ };
60
+ context?: {
61
+ relevantPatterns: LearnedPattern[];
62
+ suggestions: string[];
63
+ historicalSuccess: number;
64
+ };
65
+ stats?: {
66
+ totalExecutions: number;
67
+ totalCompositions: number;
68
+ totalTrajectories: number;
69
+ successfulTrajectories: number;
70
+ avgExecutionsPerComposition: number;
71
+ avgAttemptsPerTrajectory: number;
72
+ };
73
+ }
74
+ /**
75
+ * Trajectory skill definition
76
+ */
77
+ export declare const trajectorySkill: Skill<z.infer<typeof TrajectoryParams>, TrajectoryData>;
78
+ export { TrajectoryParams };
79
+ export type { TrajectoryData, LearnedPattern };
80
+ //# sourceMappingURL=trajectory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trajectory.d.ts","sourceRoot":"","sources":["../../../src/skills/shared/trajectory.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,KAAK,EAA6B,MAAM,aAAa,CAAC;AAGpE;;GAEG;AACH,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;6BAyCpB,CAAC;AAEH;;GAEG;AACH,UAAU,cAAc;IACtB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,UAAU,cAAc;IACtB,MAAM,EAAE,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,CAAC;IACjD,QAAQ,CAAC,EAAE,cAAc,EAAE,CAAC;IAC5B,QAAQ,CAAC,EAAE;QACT,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,OAAO,CAAC,EAAE;QACR,gBAAgB,EAAE,cAAc,EAAE,CAAC;QACnC,WAAW,EAAE,MAAM,EAAE,CAAC;QACtB,iBAAiB,EAAE,MAAM,CAAC;KAC3B,CAAC;IACF,KAAK,CAAC,EAAE;QACN,eAAe,EAAE,MAAM,CAAC;QACxB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,iBAAiB,EAAE,MAAM,CAAC;QAC1B,sBAAsB,EAAE,MAAM,CAAC;QAC/B,2BAA2B,EAAE,MAAM,CAAC;QACpC,wBAAwB,EAAE,MAAM,CAAC;KAClC,CAAC;CACH;AA2CD;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,KAAK,CACjC,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,EAChC,cAAc,CAmLf,CAAC;AAKF,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAC5B,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * GLM Daemon - Analyze Market Skill
3
+ *
4
+ * Analyze market conditions and identify trading opportunities.
5
+ */
6
+ import { z } from "zod";
7
+ import type { Skill } from "../types.js";
8
+ /**
9
+ * Analyze market parameters
10
+ */
11
+ declare const AnalyzeMarketParams: z.ZodObject<{
12
+ symbol: z.ZodOptional<z.ZodString>;
13
+ timeframe: z.ZodOptional<z.ZodEnum<{
14
+ short: "short";
15
+ medium: "medium";
16
+ long: "long";
17
+ }>>;
18
+ includeSentiment: z.ZodOptional<z.ZodBoolean>;
19
+ }, z.core.$strip>;
20
+ /**
21
+ * Market analysis result data
22
+ */
23
+ interface AnalyzeMarketData {
24
+ trend: "bullish" | "bearish" | "sideways";
25
+ confidence: number;
26
+ supportLevels: number[];
27
+ resistanceLevels: number[];
28
+ indicators: {
29
+ rsi?: number;
30
+ macd?: string;
31
+ volume?: string;
32
+ };
33
+ signals: string[];
34
+ riskLevel: "low" | "medium" | "high";
35
+ marketCondition: "volatile" | "ranging" | "trending";
36
+ }
37
+ /**
38
+ * Analyze market skill
39
+ */
40
+ export declare const analyzeMarketSkill: Skill<z.infer<typeof AnalyzeMarketParams>, AnalyzeMarketData>;
41
+ export { AnalyzeMarketParams };
42
+ export type { AnalyzeMarketData };
43
+ //# sourceMappingURL=analyze-market.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analyze-market.d.ts","sourceRoot":"","sources":["../../../src/skills/trading/analyze-market.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,KAAK,EAA6B,MAAM,aAAa,CAAC;AAGpE;;GAEG;AACH,QAAA,MAAM,mBAAmB;;;;;;;;iBAOvB,CAAC;AAEH;;GAEG;AACH,UAAU,iBAAiB;IACzB,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,UAAU,CAAC;IAC1C,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,UAAU,EAAE;QACV,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACrC,eAAe,EAAE,UAAU,GAAG,SAAS,GAAG,UAAU,CAAC;CACtD;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,EAAE,iBAAiB,CA+F5F,CAAC;AAIF,OAAO,EAAE,mBAAmB,EAAE,CAAC;AAC/B,YAAY,EAAE,iBAAiB,EAAE,CAAC"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * GLM Daemon - Check Risk Skill
3
+ *
4
+ * Evaluate risk and validate signal before execution.
5
+ */
6
+ import { z } from "zod";
7
+ import type { Skill } from "../types.js";
8
+ /**
9
+ * Check risk parameters
10
+ */
11
+ declare const CheckRiskParams: z.ZodObject<{
12
+ maxRiskPerTrade: z.ZodOptional<z.ZodNumber>;
13
+ minRiskReward: z.ZodOptional<z.ZodNumber>;
14
+ maxExposure: z.ZodOptional<z.ZodNumber>;
15
+ }, z.core.$strip>;
16
+ /**
17
+ * Risk check result data
18
+ */
19
+ interface CheckRiskData {
20
+ approved: boolean;
21
+ riskScore: number;
22
+ concerns: string[];
23
+ adjustments: string[];
24
+ maxPositionSize: number;
25
+ reasoning: string;
26
+ }
27
+ /**
28
+ * Check risk skill
29
+ */
30
+ export declare const checkRiskSkill: Skill<z.infer<typeof CheckRiskParams>, CheckRiskData>;
31
+ export { CheckRiskParams };
32
+ export type { CheckRiskData };
33
+ //# sourceMappingURL=check-risk.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"check-risk.d.ts","sourceRoot":"","sources":["../../../src/skills/trading/check-risk.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,KAAK,EAA6B,MAAM,aAAa,CAAC;AAkCpE;;GAEG;AACH,QAAA,MAAM,eAAe;;;;iBAOnB,CAAC;AAEH;;GAEG;AACH,UAAU,aAAa;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,EAAE,aAAa,CAsGhF,CAAC;AAIF,OAAO,EAAE,eAAe,EAAE,CAAC;AAC3B,YAAY,EAAE,aAAa,EAAE,CAAC"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * GLM Daemon - Execute Trade Skill
3
+ *
4
+ * Execute trades according to validated signals.
5
+ */
6
+ import { z } from "zod";
7
+ import type { Skill } from "../types.js";
8
+ /**
9
+ * Execute trade parameters
10
+ */
11
+ declare const ExecuteTradeParams: z.ZodObject<{
12
+ paper: z.ZodOptional<z.ZodBoolean>;
13
+ orderType: z.ZodOptional<z.ZodEnum<{
14
+ limit: "limit";
15
+ market: "market";
16
+ fok: "fok";
17
+ }>>;
18
+ }, z.core.$strip>;
19
+ /**
20
+ * Execute trade result data
21
+ */
22
+ interface ExecuteTradeData {
23
+ orderId: string;
24
+ direction: string;
25
+ entryPrice: number;
26
+ size: number;
27
+ stopLossOrderId: string;
28
+ takeProfitOrderIds: string[];
29
+ status: "placed" | "filled" | "partial" | "failed";
30
+ timestamp: string;
31
+ }
32
+ /**
33
+ * Execute trade skill
34
+ */
35
+ export declare const executeTradeSkill: Skill<z.infer<typeof ExecuteTradeParams>, ExecuteTradeData>;
36
+ export { ExecuteTradeParams };
37
+ export type { ExecuteTradeData };
38
+ //# sourceMappingURL=execute-trade.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execute-trade.d.ts","sourceRoot":"","sources":["../../../src/skills/trading/execute-trade.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,KAAK,EAA6B,MAAM,aAAa,CAAC;AAmCpE;;GAEG;AACH,QAAA,MAAM,kBAAkB;;;;;;;iBAKtB,CAAC;AAEH;;GAEG;AACH,UAAU,gBAAgB;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;IACnD,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,EAAE,gBAAgB,CA8GzF,CAAC;AAIF,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAC9B,YAAY,EAAE,gBAAgB,EAAE,CAAC"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * GLM Daemon - Generate Signal Skill
3
+ *
4
+ * Generate trading signals based on market analysis.
5
+ */
6
+ import { z } from "zod";
7
+ import type { Skill } from "../types.js";
8
+ /**
9
+ * Generate signal parameters
10
+ */
11
+ declare const GenerateSignalParams: z.ZodObject<{
12
+ riskTolerance: z.ZodOptional<z.ZodEnum<{
13
+ conservative: "conservative";
14
+ moderate: "moderate";
15
+ aggressive: "aggressive";
16
+ }>>;
17
+ maxPositionSize: z.ZodOptional<z.ZodNumber>;
18
+ }, z.core.$strip>;
19
+ /**
20
+ * Trading signal result data
21
+ */
22
+ interface GenerateSignalData {
23
+ direction: "long" | "short" | "none";
24
+ entryZone: {
25
+ min: number;
26
+ max: number;
27
+ };
28
+ stopLoss: number;
29
+ takeProfits: {
30
+ tp1: {
31
+ price: number;
32
+ size: string;
33
+ };
34
+ tp2: {
35
+ price: number;
36
+ size: string;
37
+ };
38
+ tp3: {
39
+ price: number;
40
+ size: string;
41
+ };
42
+ };
43
+ positionSize: {
44
+ percentage: number;
45
+ reason: string;
46
+ };
47
+ riskReward: number;
48
+ confidence: number;
49
+ rationale: string;
50
+ }
51
+ /**
52
+ * Generate signal skill
53
+ */
54
+ export declare const generateSignalSkill: Skill<z.infer<typeof GenerateSignalParams>, GenerateSignalData>;
55
+ export { GenerateSignalParams };
56
+ export type { GenerateSignalData };
57
+ //# sourceMappingURL=generate-signal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-signal.d.ts","sourceRoot":"","sources":["../../../src/skills/trading/generate-signal.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,KAAK,EAA6B,MAAM,aAAa,CAAC;AAGpE;;GAEG;AACH,QAAA,MAAM,oBAAoB;;;;;;;iBAKxB,CAAC;AAEH;;GAEG;AACH,UAAU,kBAAkB;IAC1B,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;IACrC,SAAS,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE;QACX,GAAG,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC;QACrC,GAAG,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC;QACrC,GAAG,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC;KACtC,CAAC;IACF,YAAY,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACrD,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,EAAE,kBAAkB,CAiH/F,CAAC;AAIF,OAAO,EAAE,oBAAoB,EAAE,CAAC;AAChC,YAAY,EAAE,kBAAkB,EAAE,CAAC"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * GLM Daemon - Trading Skills
3
+ *
4
+ * Skills for trading and market analysis workflows.
5
+ */
6
+ import "./analyze-market.js";
7
+ import "./generate-signal.js";
8
+ import "./check-risk.js";
9
+ import "./execute-trade.js";
10
+ import "./monitor-position.js";
11
+ export { analyzeMarketSkill } from "./analyze-market.js";
12
+ export { generateSignalSkill } from "./generate-signal.js";
13
+ export { checkRiskSkill } from "./check-risk.js";
14
+ export { executeTradeSkill } from "./execute-trade.js";
15
+ export { monitorPositionSkill } from "./monitor-position.js";
16
+ export type { AnalyzeMarketData } from "./analyze-market.js";
17
+ export type { GenerateSignalData } from "./generate-signal.js";
18
+ export type { CheckRiskData } from "./check-risk.js";
19
+ export type { ExecuteTradeData } from "./execute-trade.js";
20
+ export type { MonitorPositionData } from "./monitor-position.js";
21
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/skills/trading/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,qBAAqB,CAAC;AAC7B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,iBAAiB,CAAC;AACzB,OAAO,oBAAoB,CAAC;AAC5B,OAAO,uBAAuB,CAAC;AAG/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAG7D,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * GLM Daemon - Monitor Position Skill
3
+ *
4
+ * Monitor open positions and market conditions.
5
+ */
6
+ import { z } from "zod";
7
+ import type { Skill } from "../types.js";
8
+ /**
9
+ * Monitor position parameters
10
+ */
11
+ declare const MonitorPositionParams: z.ZodObject<{
12
+ interval: z.ZodOptional<z.ZodNumber>;
13
+ maxHoldTime: z.ZodOptional<z.ZodNumber>;
14
+ }, z.core.$strip>;
15
+ /**
16
+ * Monitor position result data
17
+ */
18
+ interface MonitorPositionData {
19
+ currentPrice: number;
20
+ unrealizedPnL: number;
21
+ pnlPercent: number;
22
+ tp1Hit: boolean;
23
+ tp2Hit: boolean;
24
+ tp3Hit: boolean;
25
+ stopLossHit: boolean;
26
+ targetReached: boolean;
27
+ positionClosed: boolean;
28
+ status: "open" | "closed" | "stopped_out" | "taken_profit";
29
+ recommendation: "hold" | "close" | "adjust";
30
+ }
31
+ /**
32
+ * Monitor position skill
33
+ */
34
+ export declare const monitorPositionSkill: Skill<z.infer<typeof MonitorPositionParams>, MonitorPositionData>;
35
+ export { MonitorPositionParams };
36
+ export type { MonitorPositionData };
37
+ //# sourceMappingURL=monitor-position.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"monitor-position.d.ts","sourceRoot":"","sources":["../../../src/skills/trading/monitor-position.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,KAAK,EAA6B,MAAM,aAAa,CAAC;AAmBpE;;GAEG;AACH,QAAA,MAAM,qBAAqB;;;iBAKzB,CAAC;AAEH;;GAEG;AACH,UAAU,mBAAmB;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,OAAO,CAAC;IACvB,cAAc,EAAE,OAAO,CAAC;IACxB,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,aAAa,GAAG,cAAc,CAAC;IAC3D,cAAc,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;CAC7C;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,EAAE,mBAAmB,CAqHlG,CAAC;AAIF,OAAO,EAAE,qBAAqB,EAAE,CAAC;AACjC,YAAY,EAAE,mBAAmB,EAAE,CAAC"}
@@ -0,0 +1,173 @@
1
+ /**
2
+ * GLM Daemon - Skill Types
3
+ *
4
+ * Composable skill system for workflow phases.
5
+ * Skills are reusable units of work that can be shared across workflows.
6
+ */
7
+ import type { z } from "zod";
8
+ import type { GLMDaemonState } from "../types.js";
9
+ import type { GLMAgent } from "../agent.js";
10
+ /**
11
+ * Skill parameter schema type
12
+ */
13
+ export type SkillParams = z.ZodType<unknown>;
14
+ /**
15
+ * Skill result data type
16
+ * Flexible type for skill result data - can be any non-null value
17
+ */
18
+ export type SkillData = unknown;
19
+ /**
20
+ * Context passed to skill execution
21
+ */
22
+ export interface SkillContext {
23
+ /** Current daemon state */
24
+ state: GLMDaemonState;
25
+ /** Agent instance for AI calls */
26
+ agent: GLMAgent;
27
+ /** Workflow-specific custom data */
28
+ custom: Record<string, unknown>;
29
+ /** Increment tool count and check for reflection trigger */
30
+ incrementToolCount: () => boolean;
31
+ /** Execute a lifecycle hook */
32
+ executeHook: (event: string, ...args: unknown[]) => Promise<void>;
33
+ /** Call another skill by ID */
34
+ callSkill: (id: string, params?: unknown) => Promise<SkillResult>;
35
+ /** Workflow configuration (contains skill params) */
36
+ workflowConfig?: Record<string, unknown>;
37
+ }
38
+ /**
39
+ * Result returned by skill execution
40
+ */
41
+ export interface SkillResult<T = SkillData> {
42
+ /** Whether the skill executed successfully */
43
+ success: boolean;
44
+ /** Result data from skill execution */
45
+ data?: T;
46
+ /** Error message if failed */
47
+ error?: string;
48
+ /** Updates to apply to context.custom */
49
+ contextUpdates?: Record<string, unknown>;
50
+ /** Updates to apply to daemon state */
51
+ stateUpdates?: Partial<GLMDaemonState>;
52
+ /** Next skill to execute (overrides workflow transition) */
53
+ nextSkill?: string;
54
+ /** Whether to stop the workflow */
55
+ stop?: boolean;
56
+ }
57
+ /**
58
+ * Skill configuration (static definition)
59
+ */
60
+ export interface SkillConfig<P = unknown> {
61
+ /** Unique skill identifier (e.g., "analyze-market" → "/analyze-market") */
62
+ id: string;
63
+ /** Human-readable name */
64
+ name: string;
65
+ /** Description for AI to understand skill purpose */
66
+ description: string;
67
+ /** Parameter schema (Zod) for validation */
68
+ paramsSchema?: z.ZodType<P>;
69
+ /** Default parameters from workflow config */
70
+ defaultParams?: P;
71
+ /** Context keys required before execution */
72
+ requires?: string[];
73
+ /** Context keys produced after execution */
74
+ produces?: string[];
75
+ /** Tags for categorization */
76
+ tags?: string[];
77
+ /** Whether this skill can run in parallel with others */
78
+ parallelizable?: boolean;
79
+ /** Max retry attempts on failure (default: 3) */
80
+ maxRetries?: number;
81
+ /** Base delay for retry backoff in ms (default: 1000) */
82
+ retryBaseDelay?: number;
83
+ }
84
+ /**
85
+ * Skill interface - combines config and execution
86
+ */
87
+ export interface Skill<P = unknown, T = SkillData> extends SkillConfig<P> {
88
+ /** Execute the skill */
89
+ execute(params: P | undefined, context: SkillContext): Promise<SkillResult<T>>;
90
+ }
91
+ /**
92
+ * Skill factory function type
93
+ */
94
+ export type SkillFactory<P = unknown, T = SkillData> = (config?: Partial<SkillConfig<P>>) => Skill<P, T>;
95
+ /**
96
+ * Transition rule between skills
97
+ */
98
+ export interface SkillTransition {
99
+ /** Source skill ID or "*" for any */
100
+ from: string;
101
+ /** Target skill ID */
102
+ to: string;
103
+ /** Condition for transition */
104
+ condition?: SkillTransitionCondition;
105
+ /** Priority (higher = checked first) */
106
+ priority?: number;
107
+ /** Description of when this transition applies */
108
+ description?: string;
109
+ }
110
+ /**
111
+ * Transition condition function
112
+ */
113
+ export type SkillTransitionCondition = (context: SkillContext, result: SkillResult) => boolean | Promise<boolean>;
114
+ /**
115
+ * Workflow configuration using skill sequences
116
+ */
117
+ export interface SkillWorkflowConfig {
118
+ /** Workflow identifier */
119
+ id: string;
120
+ /** Human-readable name */
121
+ name: string;
122
+ /** Description */
123
+ description: string;
124
+ /** Skills to execute (in order, unless transitions override) */
125
+ skills: string[];
126
+ /** Initial skill to start with */
127
+ initialSkill: string;
128
+ /** Skills that terminate the workflow */
129
+ terminalSkills: string[];
130
+ /** Transition rules between skills */
131
+ transitions: SkillTransition[];
132
+ /** Default skill parameters */
133
+ skillParams?: Record<string, unknown>;
134
+ /** System prompt extensions for this workflow */
135
+ systemPromptExtensions?: string;
136
+ /** Reflection skill ID (if supported) */
137
+ reflectionSkill?: string;
138
+ /** Custom completion check */
139
+ isComplete?: (context: SkillContext) => boolean | Promise<boolean>;
140
+ }
141
+ /**
142
+ * Skill execution metadata
143
+ */
144
+ export interface SkillExecutionMeta {
145
+ /** Skill ID */
146
+ skillId: string;
147
+ /** Execution start time */
148
+ startTime: string;
149
+ /** Execution end time */
150
+ endTime?: string;
151
+ /** Duration in ms */
152
+ duration?: number;
153
+ /** Attempt number (for retries) */
154
+ attempt: number;
155
+ /** Whether execution succeeded */
156
+ success: boolean;
157
+ /** Error message if failed */
158
+ error?: string;
159
+ }
160
+ /**
161
+ * Skill execution options
162
+ */
163
+ export interface SkillExecutionOptions {
164
+ /** Override max retries */
165
+ maxRetries?: number;
166
+ /** Skip parameter validation */
167
+ skipValidation?: boolean;
168
+ /** Custom timeout in ms */
169
+ timeout?: number;
170
+ /** Whether to update context after execution */
171
+ updateContext?: boolean;
172
+ }
173
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/skills/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * GLM Daemon - Skill-Based Workflows
3
+ *
4
+ * Workflow definitions using skill sequences.
5
+ * Replaces the old class-based workflow system.
6
+ */
7
+ import type { SkillWorkflowConfig } from "./types.js";
8
+ export declare const codingWorkflow: SkillWorkflowConfig;
9
+ export declare const tradingWorkflow: SkillWorkflowConfig;
10
+ /**
11
+ * Simple workflow registry for skill-based workflows
12
+ */
13
+ declare class WorkflowConfigRegistry {
14
+ private workflows;
15
+ private defaultWorkflow;
16
+ register(config: SkillWorkflowConfig, setDefault?: boolean): void;
17
+ get(id: string): SkillWorkflowConfig | undefined;
18
+ getDefault(): SkillWorkflowConfig | undefined;
19
+ list(): Array<{
20
+ id: string;
21
+ name: string;
22
+ description: string;
23
+ }>;
24
+ }
25
+ export declare const workflowConfigRegistry: WorkflowConfigRegistry;
26
+ import type { SkillContext, SkillResult } from "./types.js";
27
+ /**
28
+ * Execute a skill-based workflow
29
+ */
30
+ export declare function executeWorkflowSkill(workflow: SkillWorkflowConfig, context: SkillContext): Promise<SkillResult>;
31
+ /**
32
+ * Check if workflow is complete
33
+ */
34
+ export declare function isWorkflowComplete(workflow: SkillWorkflowConfig, context: SkillContext): Promise<boolean>;
35
+ export {};
36
+ //# sourceMappingURL=workflows.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflows.d.ts","sourceRoot":"","sources":["../../src/skills/workflows.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAmB,MAAM,YAAY,CAAC;AAkDvE,eAAO,MAAM,cAAc,EAAE,mBAyB5B,CAAC;AAkDF,eAAO,MAAM,eAAe,EAAE,mBAoC7B,CAAC;AAMF;;GAEG;AACH,cAAM,sBAAsB;IAC1B,OAAO,CAAC,SAAS,CAA+C;IAChE,OAAO,CAAC,eAAe,CAAuB;IAE9C,QAAQ,CAAC,MAAM,EAAE,mBAAmB,EAAE,UAAU,UAAQ,GAAG,IAAI;IAO/D,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,mBAAmB,GAAG,SAAS;IAIhD,UAAU,IAAI,mBAAmB,GAAG,SAAS;IAK7C,IAAI,IAAI,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;CAOjE;AAED,eAAO,MAAM,sBAAsB,wBAA+B,CAAC;AAUnE,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAG5D;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,mBAAmB,EAC7B,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,WAAW,CAAC,CA8CtB;AAgDD;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,mBAAmB,EAC7B,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,OAAO,CAAC,CAclB"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * GLM Daemon - State Manager
3
+ *
4
+ * Manages SLAM state persistence to disk.
5
+ */
6
+ import type { GLMDaemonState } from "./types.js";
7
+ export declare class StateManager {
8
+ private statePath;
9
+ constructor(statePath: string);
10
+ /**
11
+ * Load state from disk
12
+ */
13
+ load(): Promise<GLMDaemonState | null>;
14
+ /**
15
+ * Save state to disk
16
+ */
17
+ save(state: GLMDaemonState): Promise<void>;
18
+ /**
19
+ * Delete state file
20
+ */
21
+ delete(): Promise<void>;
22
+ /**
23
+ * Check if state file exists
24
+ */
25
+ exists(): Promise<boolean>;
26
+ /**
27
+ * Update a portion of state (merge)
28
+ */
29
+ update(updates: Partial<GLMDaemonState>): Promise<GLMDaemonState>;
30
+ }
31
+ //# sourceMappingURL=state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,qBAAa,YAAY;IACvB,OAAO,CAAC,SAAS,CAAS;gBAEd,SAAS,EAAE,MAAM;IAI7B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAU5C;;OAEG;IACG,IAAI,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAQhD;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ7B;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAShC;;OAEG;IACG,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;CAUxE"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * GLM Daemon - Tool Bridge
3
+ *
4
+ * Connects GLM agents to MCP servers for tool access.
5
+ */
6
+ import type { GLMToolsConfig } from "./types.js";
7
+ export declare class ToolBridge {
8
+ private config;
9
+ private availableTools;
10
+ private toolTimeout;
11
+ private maxRetries;
12
+ constructor(config?: GLMToolsConfig);
13
+ /**
14
+ * Get list of available tools
15
+ */
16
+ getAvailableTools(): string[];
17
+ /**
18
+ * Set available tools (from MCP discovery)
19
+ */
20
+ setAvailableTools(tools: string[]): void;
21
+ /**
22
+ * Check if a tool is allowed
23
+ */
24
+ isToolAllowed(toolName: string): boolean;
25
+ /**
26
+ * Execute a tool with timeout and retry
27
+ */
28
+ executeTool(toolName: string, args: Record<string, unknown>): Promise<{
29
+ success: boolean;
30
+ result?: unknown;
31
+ error?: string;
32
+ }>;
33
+ /**
34
+ * Execute tool with timeout
35
+ */
36
+ private executeWithTimeout;
37
+ /**
38
+ * Discover tools from MCP servers
39
+ */
40
+ discoverMCPTools(): Promise<void>;
41
+ }
42
+ //# sourceMappingURL=tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,cAAc,CAAgB;IACtC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,UAAU,CAAS;gBAEf,MAAM,GAAE,cAAmB;IAMvC;;OAEG;IACH,iBAAiB,IAAI,MAAM,EAAE;IAI7B;;OAEG;IACH,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI;IAIxC;;OAEG;IACH,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAexC;;OAEG;IACG,WAAW,CACf,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IA+BlE;;OAEG;YACW,kBAAkB;IAkBhC;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;CAoBxC"}