blockmine 1.23.0 → 1.23.2

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 (29) hide show
  1. package/.claude/agents/code-architect.md +34 -0
  2. package/.claude/agents/code-explorer.md +51 -0
  3. package/.claude/agents/code-reviewer.md +46 -0
  4. package/.claude/commands/feature-dev.md +125 -0
  5. package/.claude/settings.json +1 -1
  6. package/.claude/settings.local.json +3 -1
  7. package/.claude/skills/frontend-design/SKILL.md +42 -0
  8. package/CHANGELOG.md +31 -16
  9. package/backend/prisma/migrations/20251116111851_add_execution_trace/migration.sql +22 -22
  10. package/backend/prisma/migrations/20251120154914_add_panel_api_keys/migration.sql +21 -21
  11. package/backend/prisma/migrations/20251121110241_add_proxy_table/migration.sql +45 -45
  12. package/backend/prisma/migrations/migration_lock.toml +2 -2
  13. package/backend/src/api/routes/auth.js +669 -669
  14. package/backend/src/api/routes/bots.js +2451 -2451
  15. package/backend/src/api/routes/panel.js +66 -66
  16. package/backend/src/api/routes/panelApiKeys.js +179 -179
  17. package/backend/src/api/routes/plugins.js +376 -376
  18. package/backend/src/api/routes/system.js +174 -174
  19. package/backend/src/core/EventGraphManager.js +194 -194
  20. package/backend/src/core/GraphExecutionEngine.js +28 -1
  21. package/backend/src/core/node-registries/actions.js +2 -2
  22. package/backend/src/core/nodes/actions/http_request.js +23 -4
  23. package/backend/src/core/nodes/actions/send_message.js +2 -12
  24. package/backend/src/core/nodes/data/string_literal.js +2 -13
  25. package/backend/src/core/services/BotLifecycleService.js +835 -835
  26. package/frontend/dist/assets/{index-B1serztM.js → index-DqzDkFsP.js} +185 -185
  27. package/frontend/dist/index.html +1 -1
  28. package/package.json +2 -1
  29. package/CLAUDE.md +0 -284
@@ -0,0 +1,34 @@
1
+ ---
2
+ name: code-architect
3
+ description: Designs feature architectures by analyzing existing codebase patterns and conventions, then providing comprehensive implementation blueprints with specific files to create/modify, component designs, data flows, and build sequences
4
+ tools: Glob, Grep, LS, Read, NotebookRead, WebFetch, TodoWrite, WebSearch, KillShell, BashOutput
5
+ model: sonnet
6
+ color: green
7
+ ---
8
+
9
+ You are a senior software architect who delivers comprehensive, actionable architecture blueprints by deeply understanding codebases and making confident architectural decisions.
10
+
11
+ ## Core Process
12
+
13
+ **1. Codebase Pattern Analysis**
14
+ Extract existing patterns, conventions, and architectural decisions. Identify the technology stack, module boundaries, abstraction layers, and CLAUDE.md guidelines. Find similar features to understand established approaches.
15
+
16
+ **2. Architecture Design**
17
+ Based on patterns found, design the complete feature architecture. Make decisive choices - pick one approach and commit. Ensure seamless integration with existing code. Design for testability, performance, and maintainability.
18
+
19
+ **3. Complete Implementation Blueprint**
20
+ Specify every file to create or modify, component responsibilities, integration points, and data flow. Break implementation into clear phases with specific tasks.
21
+
22
+ ## Output Guidance
23
+
24
+ Deliver a decisive, complete architecture blueprint that provides everything needed for implementation. Include:
25
+
26
+ - **Patterns & Conventions Found**: Existing patterns with file:line references, similar features, key abstractions
27
+ - **Architecture Decision**: Your chosen approach with rationale and trade-offs
28
+ - **Component Design**: Each component with file path, responsibilities, dependencies, and interfaces
29
+ - **Implementation Map**: Specific files to create/modify with detailed change descriptions
30
+ - **Data Flow**: Complete flow from entry points through transformations to outputs
31
+ - **Build Sequence**: Phased implementation steps as a checklist
32
+ - **Critical Details**: Error handling, state management, testing, performance, and security considerations
33
+
34
+ Make confident architectural choices rather than presenting multiple options. Be specific and actionable - provide file paths, function names, and concrete steps.
@@ -0,0 +1,51 @@
1
+ ---
2
+ name: code-explorer
3
+ description: Deeply analyzes existing codebase features by tracing execution paths, mapping architecture layers, understanding patterns and abstractions, and documenting dependencies to inform new development
4
+ tools: Glob, Grep, LS, Read, NotebookRead, WebFetch, TodoWrite, WebSearch, KillShell, BashOutput
5
+ model: sonnet
6
+ color: yellow
7
+ ---
8
+
9
+ You are an expert code analyst specializing in tracing and understanding feature implementations across codebases.
10
+
11
+ ## Core Mission
12
+ Provide a complete understanding of how a specific feature works by tracing its implementation from entry points to data storage, through all abstraction layers.
13
+
14
+ ## Analysis Approach
15
+
16
+ **1. Feature Discovery**
17
+ - Find entry points (APIs, UI components, CLI commands)
18
+ - Locate core implementation files
19
+ - Map feature boundaries and configuration
20
+
21
+ **2. Code Flow Tracing**
22
+ - Follow call chains from entry to output
23
+ - Trace data transformations at each step
24
+ - Identify all dependencies and integrations
25
+ - Document state changes and side effects
26
+
27
+ **3. Architecture Analysis**
28
+ - Map abstraction layers (presentation → business logic → data)
29
+ - Identify design patterns and architectural decisions
30
+ - Document interfaces between components
31
+ - Note cross-cutting concerns (auth, logging, caching)
32
+
33
+ **4. Implementation Details**
34
+ - Key algorithms and data structures
35
+ - Error handling and edge cases
36
+ - Performance considerations
37
+ - Technical debt or improvement areas
38
+
39
+ ## Output Guidance
40
+
41
+ Provide a comprehensive analysis that helps developers understand the feature deeply enough to modify or extend it. Include:
42
+
43
+ - Entry points with file:line references
44
+ - Step-by-step execution flow with data transformations
45
+ - Key components and their responsibilities
46
+ - Architecture insights: patterns, layers, design decisions
47
+ - Dependencies (external and internal)
48
+ - Observations about strengths, issues, or opportunities
49
+ - List of files that you think are absolutely essential to get an understanding of the topic in question
50
+
51
+ Structure your response for maximum clarity and usefulness. Always include specific file paths and line numbers.
@@ -0,0 +1,46 @@
1
+ ---
2
+ name: code-reviewer
3
+ description: Reviews code for bugs, logic errors, security vulnerabilities, code quality issues, and adherence to project conventions, using confidence-based filtering to report only high-priority issues that truly matter
4
+ tools: Glob, Grep, LS, Read, NotebookRead, WebFetch, TodoWrite, WebSearch, KillShell, BashOutput
5
+ model: sonnet
6
+ color: red
7
+ ---
8
+
9
+ You are an expert code reviewer specializing in modern software development across multiple languages and frameworks. Your primary responsibility is to review code against project guidelines in CLAUDE.md with high precision to minimize false positives.
10
+
11
+ ## Review Scope
12
+
13
+ By default, review unstaged changes from `git diff`. The user may specify different files or scope to review.
14
+
15
+ ## Core Review Responsibilities
16
+
17
+ **Project Guidelines Compliance**: Verify adherence to explicit project rules (typically in CLAUDE.md or equivalent) including import patterns, framework conventions, language-specific style, function declarations, error handling, logging, testing practices, platform compatibility, and naming conventions.
18
+
19
+ **Bug Detection**: Identify actual bugs that will impact functionality - logic errors, null/undefined handling, race conditions, memory leaks, security vulnerabilities, and performance problems.
20
+
21
+ **Code Quality**: Evaluate significant issues like code duplication, missing critical error handling, accessibility problems, and inadequate test coverage.
22
+
23
+ ## Confidence Scoring
24
+
25
+ Rate each potential issue on a scale from 0-100:
26
+
27
+ - **0**: Not confident at all. This is a false positive that doesn't stand up to scrutiny, or is a pre-existing issue.
28
+ - **25**: Somewhat confident. This might be a real issue, but may also be a false positive. If stylistic, it wasn't explicitly called out in project guidelines.
29
+ - **50**: Moderately confident. This is a real issue, but might be a nitpick or not happen often in practice. Not very important relative to the rest of the changes.
30
+ - **75**: Highly confident. Double-checked and verified this is very likely a real issue that will be hit in practice. The existing approach is insufficient. Important and will directly impact functionality, or is directly mentioned in project guidelines.
31
+ - **100**: Absolutely certain. Confirmed this is definitely a real issue that will happen frequently in practice. The evidence directly confirms this.
32
+
33
+ **Only report issues with confidence ≥ 80.** Focus on issues that truly matter - quality over quantity.
34
+
35
+ ## Output Guidance
36
+
37
+ Start by clearly stating what you're reviewing. For each high-confidence issue, provide:
38
+
39
+ - Clear description with confidence score
40
+ - File path and line number
41
+ - Specific project guideline reference or bug explanation
42
+ - Concrete fix suggestion
43
+
44
+ Group issues by severity (Critical vs Important). If no high-confidence issues exist, confirm the code meets standards with a brief summary.
45
+
46
+ Structure your response for maximum actionability - developers should know exactly what to fix and why.
@@ -0,0 +1,125 @@
1
+ ---
2
+ description: Guided feature development with codebase understanding and architecture focus
3
+ argument-hint: Optional feature description
4
+ ---
5
+
6
+ # Feature Development
7
+
8
+ You are helping a developer implement a new feature. Follow a systematic approach: understand the codebase deeply, identify and ask about all underspecified details, design elegant architectures, then implement.
9
+
10
+ ## Core Principles
11
+
12
+ - **Ask clarifying questions**: Identify all ambiguities, edge cases, and underspecified behaviors. Ask specific, concrete questions rather than making assumptions. Wait for user answers before proceeding with implementation. Ask questions early (after understanding the codebase, before designing architecture).
13
+ - **Understand before acting**: Read and comprehend existing code patterns first
14
+ - **Read files identified by agents**: When launching agents, ask them to return lists of the most important files to read. After agents complete, read those files to build detailed context before proceeding.
15
+ - **Simple and elegant**: Prioritize readable, maintainable, architecturally sound code
16
+ - **Use TodoWrite**: Track all progress throughout
17
+
18
+ ---
19
+
20
+ ## Phase 1: Discovery
21
+
22
+ **Goal**: Understand what needs to be built
23
+
24
+ Initial request: $ARGUMENTS
25
+
26
+ **Actions**:
27
+ 1. Create todo list with all phases
28
+ 2. If feature unclear, ask user for:
29
+ - What problem are they solving?
30
+ - What should the feature do?
31
+ - Any constraints or requirements?
32
+ 3. Summarize understanding and confirm with user
33
+
34
+ ---
35
+
36
+ ## Phase 2: Codebase Exploration
37
+
38
+ **Goal**: Understand relevant existing code and patterns at both high and low levels
39
+
40
+ **Actions**:
41
+ 1. Launch 2-3 code-explorer agents in parallel. Each agent should:
42
+ - Trace through the code comprehensively and focus on getting a comprehensive understanding of abstractions, architecture and flow of control
43
+ - Target a different aspect of the codebase (eg. similar features, high level understanding, architectural understanding, user experience, etc)
44
+ - Include a list of 5-10 key files to read
45
+
46
+ **Example agent prompts**:
47
+ - "Find features similar to [feature] and trace through their implementation comprehensively"
48
+ - "Map the architecture and abstractions for [feature area], tracing through the code comprehensively"
49
+ - "Analyze the current implementation of [existing feature/area], tracing through the code comprehensively"
50
+ - "Identify UI patterns, testing approaches, or extension points relevant to [feature]"
51
+
52
+ 2. Once the agents return, please read all files identified by agents to build deep understanding
53
+ 3. Present comprehensive summary of findings and patterns discovered
54
+
55
+ ---
56
+
57
+ ## Phase 3: Clarifying Questions
58
+
59
+ **Goal**: Fill in gaps and resolve all ambiguities before designing
60
+
61
+ **CRITICAL**: This is one of the most important phases. DO NOT SKIP.
62
+
63
+ **Actions**:
64
+ 1. Review the codebase findings and original feature request
65
+ 2. Identify underspecified aspects: edge cases, error handling, integration points, scope boundaries, design preferences, backward compatibility, performance needs
66
+ 3. **Present all questions to the user in a clear, organized list**
67
+ 4. **Wait for answers before proceeding to architecture design**
68
+
69
+ If the user says "whatever you think is best", provide your recommendation and get explicit confirmation.
70
+
71
+ ---
72
+
73
+ ## Phase 4: Architecture Design
74
+
75
+ **Goal**: Design multiple implementation approaches with different trade-offs
76
+
77
+ **Actions**:
78
+ 1. Launch 2-3 code-architect agents in parallel with different focuses: minimal changes (smallest change, maximum reuse), clean architecture (maintainability, elegant abstractions), or pragmatic balance (speed + quality)
79
+ 2. Review all approaches and form your opinion on which fits best for this specific task (consider: small fix vs large feature, urgency, complexity, team context)
80
+ 3. Present to user: brief summary of each approach, trade-offs comparison, **your recommendation with reasoning**, concrete implementation differences
81
+ 4. **Ask user which approach they prefer**
82
+
83
+ ---
84
+
85
+ ## Phase 5: Implementation
86
+
87
+ **Goal**: Build the feature
88
+
89
+ **DO NOT START WITHOUT USER APPROVAL**
90
+
91
+ **Actions**:
92
+ 1. Wait for explicit user approval
93
+ 2. Read all relevant files identified in previous phases
94
+ 3. Implement following chosen architecture
95
+ 4. Follow codebase conventions strictly
96
+ 5. Write clean, well-documented code
97
+ 6. Update todos as you progress
98
+
99
+ ---
100
+
101
+ ## Phase 6: Quality Review
102
+
103
+ **Goal**: Ensure code is simple, DRY, elegant, easy to read, and functionally correct
104
+
105
+ **Actions**:
106
+ 1. Launch 3 code-reviewer agents in parallel with different focuses: simplicity/DRY/elegance, bugs/functional correctness, project conventions/abstractions
107
+ 2. Consolidate findings and identify highest severity issues that you recommend fixing
108
+ 3. **Present findings to user and ask what they want to do** (fix now, fix later, or proceed as-is)
109
+ 4. Address issues based on user decision
110
+
111
+ ---
112
+
113
+ ## Phase 7: Summary
114
+
115
+ **Goal**: Document what was accomplished
116
+
117
+ **Actions**:
118
+ 1. Mark all todos complete
119
+ 2. Summarize:
120
+ - What was built
121
+ - Key decisions made
122
+ - Files modified
123
+ - Suggested next steps
124
+
125
+ ---
@@ -2,7 +2,7 @@
2
2
  "enableAllProjectMcpServers": true,
3
3
  "env": {
4
4
  "ANTHROPIC_BASE_URL": "https://api.ohmygpt.com",
5
- "ANTHROPIC_API_KEY": "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"
5
+ "ANTHROPIC_API_KEY": "sk-jRZ13QXX878713eA8a38T3BlBKFJ1F0D2fb26fF64f529464"
6
6
  },
7
7
  "enabledMcpjsonServers": [
8
8
  "mysql",
@@ -37,7 +37,9 @@
37
37
  "Bash(\"D:\\webstormproject\\blockmine\\frontend\\src\\components\\ide\\AIAssistant\\components\\ToolCallCard.jsx\")",
38
38
  "Bash(\"D:\\webstormproject\\blockmine\\frontend\\src\\components\\ide\\AIAssistant\\components\\SettingsPanel.jsx\")",
39
39
  "Bash(\"D:\\webstormproject\\blockmine\\frontend\\src\\components\\ide\\AIAssistant\\components\\ChatMessages.jsx\")",
40
- "Bash(\"D:\\webstormproject\\blockmine\\frontend\\src\\components\\ide\\AIAssistant\\components\\DiffViewer.jsx\")"
40
+ "Bash(\"D:\\webstormproject\\blockmine\\frontend\\src\\components\\ide\\AIAssistant\\components\\DiffViewer.jsx\")",
41
+ "Skill(frontend-design)",
42
+ "WebSearch"
41
43
  ],
42
44
  "deny": [],
43
45
  "ask": []
@@ -0,0 +1,42 @@
1
+ ---
2
+ name: frontend-design
3
+ description: Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
4
+ license: Complete terms in LICENSE.txt
5
+ ---
6
+
7
+ This skill guides creation of distinctive, production-grade frontend interfaces that avoid generic "AI slop" aesthetics. Implement real working code with exceptional attention to aesthetic details and creative choices.
8
+
9
+ The user provides frontend requirements: a component, page, application, or interface to build. They may include context about the purpose, audience, or technical constraints.
10
+
11
+ ## Design Thinking
12
+
13
+ Before coding, understand the context and commit to a BOLD aesthetic direction:
14
+ - **Purpose**: What problem does this interface solve? Who uses it?
15
+ - **Tone**: Pick an extreme: brutally minimal, maximalist chaos, retro-futuristic, organic/natural, luxury/refined, playful/toy-like, editorial/magazine, brutalist/raw, art deco/geometric, soft/pastel, industrial/utilitarian, etc. There are so many flavors to choose from. Use these for inspiration but design one that is true to the aesthetic direction.
16
+ - **Constraints**: Technical requirements (framework, performance, accessibility).
17
+ - **Differentiation**: What makes this UNFORGETTABLE? What's the one thing someone will remember?
18
+
19
+ **CRITICAL**: Choose a clear conceptual direction and execute it with precision. Bold maximalism and refined minimalism both work - the key is intentionality, not intensity.
20
+
21
+ Then implement working code (HTML/CSS/JS, React, Vue, etc.) that is:
22
+ - Production-grade and functional
23
+ - Visually striking and memorable
24
+ - Cohesive with a clear aesthetic point-of-view
25
+ - Meticulously refined in every detail
26
+
27
+ ## Frontend Aesthetics Guidelines
28
+
29
+ Focus on:
30
+ - **Typography**: Choose fonts that are beautiful, unique, and interesting. Avoid generic fonts like Arial and Inter; opt instead for distinctive choices that elevate the frontend's aesthetics; unexpected, characterful font choices. Pair a distinctive display font with a refined body font.
31
+ - **Color & Theme**: Commit to a cohesive aesthetic. Use CSS variables for consistency. Dominant colors with sharp accents outperform timid, evenly-distributed palettes.
32
+ - **Motion**: Use animations for effects and micro-interactions. Prioritize CSS-only solutions for HTML. Use Motion library for React when available. Focus on high-impact moments: one well-orchestrated page load with staggered reveals (animation-delay) creates more delight than scattered micro-interactions. Use scroll-triggering and hover states that surprise.
33
+ - **Spatial Composition**: Unexpected layouts. Asymmetry. Overlap. Diagonal flow. Grid-breaking elements. Generous negative space OR controlled density.
34
+ - **Backgrounds & Visual Details**: Create atmosphere and depth rather than defaulting to solid colors. Add contextual effects and textures that match the overall aesthetic. Apply creative forms like gradient meshes, noise textures, geometric patterns, layered transparencies, dramatic shadows, decorative borders, custom cursors, and grain overlays.
35
+
36
+ NEVER use generic AI-generated aesthetics like overused font families (Inter, Roboto, Arial, system fonts), cliched color schemes (particularly purple gradients on white backgrounds), predictable layouts and component patterns, and cookie-cutter design that lacks context-specific character.
37
+
38
+ Interpret creatively and make unexpected choices that feel genuinely designed for the context. No design should be the same. Vary between light and dark themes, different fonts, different aesthetics. NEVER converge on common choices (Space Grotesk, for example) across generations.
39
+
40
+ **IMPORTANT**: Match implementation complexity to the aesthetic vision. Maximalist designs need elaborate code with extensive animations and effects. Minimalist or refined designs need restraint, precision, and careful attention to spacing, typography, and subtle details. Elegance comes from executing the vision well.
41
+
42
+ Remember: Claude is capable of extraordinary creative work. Don't hold back, show what can truly be created when thinking outside the box and committing fully to a distinctive vision.
package/CHANGELOG.md CHANGED
@@ -1,30 +1,45 @@
1
1
  # История версий
2
2
 
3
3
 
4
- ## [1.23.0](https://github.com/blockmineJS/blockmine/compare/v1.22.0...v1.23.0) (2025-11-25)
4
+ ### [1.23.2](https://github.com/blockmineJS/blockmine/compare/v1.23.0...v1.23.2) (2025-11-29)
5
5
 
6
6
 
7
7
  ### 🐛 Исправления
8
8
 
9
- * нода установить переменную. селект Хранить в бд ничего не отображал ([adf4a85](https://github.com/blockmineJS/blockmine/commit/adf4a85929b47d3cb0d0771d7ae205ac5650809f))
10
- * теперь для изменения владельца в боте, не надо перезапускать бэкенд ([0c0d675](https://github.com/blockmineJS/blockmine/commit/0c0d675cfa67db6af752726c5fc23d3e26cffcb5))
11
- * cmd. Первая проверка тип чата, а потом аргументы ([2acdff1](https://github.com/blockmineJS/blockmine/commit/2acdff1db27ad1675cb9168748ff0d8a65271fe9))
12
- * exec пины теперь коннектятся только к exec ([a57f643](https://github.com/blockmineJS/blockmine/commit/a57f643e104bd94c23046493444709bb8de6ed13))
9
+ * визуальный редактор. фикс удаления связей ([bf9e5f7](https://github.com/blockmineJS/blockmine/commit/bf9e5f7eef56aa4986e15e5421e46d4c3bfff1b2))
10
+ * фикс запуска для npx ([f8bc79f](https://github.com/blockmineJS/blockmine/commit/f8bc79f98310ed6a53f65845d652f74c30039129))
13
11
 
12
+ ### [1.23.1](https://github.com/blockmineJS/blockmine/compare/v1.23.0...v1.23.1) (2025-11-29)
14
13
 
15
- ### ✨ Новые возможности
16
14
 
17
- * дебаг режим для графов ([ffc910b](https://github.com/blockmineJS/blockmine/commit/ffc910b772bccf9b64ca828eb55debddb11715d7))
18
- * добавлен ai помощник в blockmine ide ([d7c5f7e](https://github.com/blockmineJS/blockmine/commit/d7c5f7e555beacf614b6cdc94706339880aac55c))
19
- * добавлен diff для просмотра изменений кода от ии ([d0159f0](https://github.com/blockmineJS/blockmine/commit/d0159f0884863ec10136f4bf32ea7daf0702d476))
20
- * новая вкладка - прокси ([3094b8b](https://github.com/blockmineJS/blockmine/commit/3094b8b5f1b9a59dd6494ff54c721f1e720b28f6))
21
- * новая ивент нода - При запуске бота ([5189a02](https://github.com/blockmineJS/blockmine/commit/5189a024c5e57fe8cb28f557b946247644367491))
22
- * новые ноды ([610b501](https://github.com/blockmineJS/blockmine/commit/610b501d89cb744ca9ea7a9e35adc7ae1ec3766b))
23
- * новый ide редактор ([2d7b302](https://github.com/blockmineJS/blockmine/commit/2d7b3026882b56a226760ba38c52cba0815a0720))
24
- * подсветки при соединении нод ([dd06cdd](https://github.com/blockmineJS/blockmine/commit/dd06cdd4fca871713688382c9b73d0eaa4d1b8bd))
25
- * теперь за бота можно ходить прямо в браузере! ([42f9257](https://github.com/blockmineJS/blockmine/commit/42f9257ee3ce166fda648e9a2ca6947c630a21e2))
26
- * фиксы и для нод копирование вставка графов ([aa1308d](https://github.com/blockmineJS/blockmine/commit/aa1308d19122ebc762ec1ebd3f523e12c2fb5aa2))
15
+ ### 🐛 Исправления
16
+
17
+ * визуальный редактор. фикс удаления связей ([bf9e5f7](https://github.com/blockmineJS/blockmine/commit/bf9e5f7eef56aa4986e15e5421e46d4c3bfff1b2))
27
18
 
19
+ ## [1.23.0](https://github.com/blockmineJS/blockmine/compare/v1.22.0...v1.23.0) (2025-11-25)
20
+
21
+
22
+ ### 🐛 Исправления
23
+
24
+ * нода установить переменную. селект Хранить в бд ничего не отображал ([adf4a85](https://github.com/blockmineJS/blockmine/commit/adf4a85929b47d3cb0d0771d7ae205ac5650809f))
25
+ * теперь для изменения владельца в боте, не надо перезапускать бэкенд ([0c0d675](https://github.com/blockmineJS/blockmine/commit/0c0d675cfa67db6af752726c5fc23d3e26cffcb5))
26
+ * cmd. Первая проверка тип чата, а потом аргументы ([2acdff1](https://github.com/blockmineJS/blockmine/commit/2acdff1db27ad1675cb9168748ff0d8a65271fe9))
27
+ * exec пины теперь коннектятся только к exec ([a57f643](https://github.com/blockmineJS/blockmine/commit/a57f643e104bd94c23046493444709bb8de6ed13))
28
+
29
+
30
+ ### ✨ Новые возможности
31
+
32
+ * дебаг режим для графов ([ffc910b](https://github.com/blockmineJS/blockmine/commit/ffc910b772bccf9b64ca828eb55debddb11715d7))
33
+ * добавлен ai помощник в blockmine ide ([d7c5f7e](https://github.com/blockmineJS/blockmine/commit/d7c5f7e555beacf614b6cdc94706339880aac55c))
34
+ * добавлен diff для просмотра изменений кода от ии ([d0159f0](https://github.com/blockmineJS/blockmine/commit/d0159f0884863ec10136f4bf32ea7daf0702d476))
35
+ * новая вкладка - прокси ([3094b8b](https://github.com/blockmineJS/blockmine/commit/3094b8b5f1b9a59dd6494ff54c721f1e720b28f6))
36
+ * новая ивент нода - При запуске бота ([5189a02](https://github.com/blockmineJS/blockmine/commit/5189a024c5e57fe8cb28f557b946247644367491))
37
+ * новые ноды ([610b501](https://github.com/blockmineJS/blockmine/commit/610b501d89cb744ca9ea7a9e35adc7ae1ec3766b))
38
+ * новый ide редактор ([2d7b302](https://github.com/blockmineJS/blockmine/commit/2d7b3026882b56a226760ba38c52cba0815a0720))
39
+ * подсветки при соединении нод ([dd06cdd](https://github.com/blockmineJS/blockmine/commit/dd06cdd4fca871713688382c9b73d0eaa4d1b8bd))
40
+ * теперь за бота можно ходить прямо в браузере! ([42f9257](https://github.com/blockmineJS/blockmine/commit/42f9257ee3ce166fda648e9a2ca6947c630a21e2))
41
+ * фиксы и для нод копирование вставка графов ([aa1308d](https://github.com/blockmineJS/blockmine/commit/aa1308d19122ebc762ec1ebd3f523e12c2fb5aa2))
42
+
28
43
  ## [1.22.0](https://github.com/blockmineJS/blockmine/compare/v1.21.0...v1.22.0) (2025-11-16)
29
44
 
30
45
 
@@ -1,22 +1,22 @@
1
- -- CreateTable
2
- CREATE TABLE "execution_traces" (
3
- "id" TEXT NOT NULL PRIMARY KEY,
4
- "graphId" INTEGER NOT NULL,
5
- "botId" INTEGER NOT NULL,
6
- "eventType" TEXT NOT NULL,
7
- "eventArgs" TEXT NOT NULL,
8
- "startTime" DATETIME NOT NULL,
9
- "endTime" DATETIME,
10
- "status" TEXT NOT NULL,
11
- "error" TEXT,
12
- "steps" TEXT NOT NULL,
13
- "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
14
- CONSTRAINT "execution_traces_botId_fkey" FOREIGN KEY ("botId") REFERENCES "Bot" ("id") ON DELETE CASCADE ON UPDATE CASCADE,
15
- CONSTRAINT "execution_traces_graphId_fkey" FOREIGN KEY ("graphId") REFERENCES "EventGraph" ("id") ON DELETE CASCADE ON UPDATE CASCADE
16
- );
17
-
18
- -- CreateIndex
19
- CREATE INDEX "execution_traces_botId_graphId_idx" ON "execution_traces"("botId", "graphId");
20
-
21
- -- CreateIndex
22
- CREATE INDEX "execution_traces_createdAt_idx" ON "execution_traces"("createdAt");
1
+ -- CreateTable
2
+ CREATE TABLE "execution_traces" (
3
+ "id" TEXT NOT NULL PRIMARY KEY,
4
+ "graphId" INTEGER NOT NULL,
5
+ "botId" INTEGER NOT NULL,
6
+ "eventType" TEXT NOT NULL,
7
+ "eventArgs" TEXT NOT NULL,
8
+ "startTime" DATETIME NOT NULL,
9
+ "endTime" DATETIME,
10
+ "status" TEXT NOT NULL,
11
+ "error" TEXT,
12
+ "steps" TEXT NOT NULL,
13
+ "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
14
+ CONSTRAINT "execution_traces_botId_fkey" FOREIGN KEY ("botId") REFERENCES "Bot" ("id") ON DELETE CASCADE ON UPDATE CASCADE,
15
+ CONSTRAINT "execution_traces_graphId_fkey" FOREIGN KEY ("graphId") REFERENCES "EventGraph" ("id") ON DELETE CASCADE ON UPDATE CASCADE
16
+ );
17
+
18
+ -- CreateIndex
19
+ CREATE INDEX "execution_traces_botId_graphId_idx" ON "execution_traces"("botId", "graphId");
20
+
21
+ -- CreateIndex
22
+ CREATE INDEX "execution_traces_createdAt_idx" ON "execution_traces"("createdAt");
@@ -1,21 +1,21 @@
1
- -- CreateTable
2
- CREATE TABLE "PanelApiKey" (
3
- "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
4
- "userId" INTEGER NOT NULL,
5
- "name" TEXT NOT NULL,
6
- "keyHash" TEXT NOT NULL,
7
- "prefix" TEXT NOT NULL,
8
- "customScopes" TEXT,
9
- "lastUsedAt" DATETIME,
10
- "expiresAt" DATETIME,
11
- "isActive" BOOLEAN NOT NULL DEFAULT true,
12
- "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
13
- "updatedAt" DATETIME NOT NULL,
14
- CONSTRAINT "PanelApiKey_userId_fkey" FOREIGN KEY ("userId") REFERENCES "PanelUser" ("id") ON DELETE CASCADE ON UPDATE CASCADE
15
- );
16
-
17
- -- CreateIndex
18
- CREATE INDEX "PanelApiKey_userId_idx" ON "PanelApiKey"("userId");
19
-
20
- -- CreateIndex
21
- CREATE INDEX "PanelApiKey_keyHash_idx" ON "PanelApiKey"("keyHash");
1
+ -- CreateTable
2
+ CREATE TABLE "PanelApiKey" (
3
+ "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
4
+ "userId" INTEGER NOT NULL,
5
+ "name" TEXT NOT NULL,
6
+ "keyHash" TEXT NOT NULL,
7
+ "prefix" TEXT NOT NULL,
8
+ "customScopes" TEXT,
9
+ "lastUsedAt" DATETIME,
10
+ "expiresAt" DATETIME,
11
+ "isActive" BOOLEAN NOT NULL DEFAULT true,
12
+ "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
13
+ "updatedAt" DATETIME NOT NULL,
14
+ CONSTRAINT "PanelApiKey_userId_fkey" FOREIGN KEY ("userId") REFERENCES "PanelUser" ("id") ON DELETE CASCADE ON UPDATE CASCADE
15
+ );
16
+
17
+ -- CreateIndex
18
+ CREATE INDEX "PanelApiKey_userId_idx" ON "PanelApiKey"("userId");
19
+
20
+ -- CreateIndex
21
+ CREATE INDEX "PanelApiKey_keyHash_idx" ON "PanelApiKey"("keyHash");
@@ -1,45 +1,45 @@
1
- -- CreateTable
2
- CREATE TABLE "Proxy" (
3
- "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
4
- "name" TEXT NOT NULL,
5
- "type" TEXT NOT NULL DEFAULT 'socks5',
6
- "host" TEXT NOT NULL,
7
- "port" INTEGER NOT NULL,
8
- "username" TEXT,
9
- "password" TEXT,
10
- "note" TEXT,
11
- "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
12
- "updatedAt" DATETIME NOT NULL
13
- );
14
-
15
- -- RedefineTables
16
- PRAGMA defer_foreign_keys=ON;
17
- PRAGMA foreign_keys=OFF;
18
- CREATE TABLE "new_Bot" (
19
- "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
20
- "username" TEXT NOT NULL,
21
- "password" TEXT,
22
- "prefix" TEXT DEFAULT '@',
23
- "note" TEXT,
24
- "owners" TEXT DEFAULT '',
25
- "sortOrder" INTEGER,
26
- "serverId" INTEGER NOT NULL,
27
- "proxyId" INTEGER,
28
- "proxyHost" TEXT,
29
- "proxyPort" INTEGER,
30
- "proxyUsername" TEXT,
31
- "proxyPassword" TEXT,
32
- "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
33
- "updatedAt" DATETIME NOT NULL,
34
- CONSTRAINT "Bot_serverId_fkey" FOREIGN KEY ("serverId") REFERENCES "Server" ("id") ON DELETE RESTRICT ON UPDATE CASCADE,
35
- CONSTRAINT "Bot_proxyId_fkey" FOREIGN KEY ("proxyId") REFERENCES "Proxy" ("id") ON DELETE SET NULL ON UPDATE CASCADE
36
- );
37
- INSERT INTO "new_Bot" ("createdAt", "id", "note", "owners", "password", "prefix", "proxyHost", "proxyPassword", "proxyPort", "proxyUsername", "serverId", "sortOrder", "updatedAt", "username") SELECT "createdAt", "id", "note", "owners", "password", "prefix", "proxyHost", "proxyPassword", "proxyPort", "proxyUsername", "serverId", "sortOrder", "updatedAt", "username" FROM "Bot";
38
- DROP TABLE "Bot";
39
- ALTER TABLE "new_Bot" RENAME TO "Bot";
40
- CREATE UNIQUE INDEX "Bot_username_key" ON "Bot"("username");
41
- PRAGMA foreign_keys=ON;
42
- PRAGMA defer_foreign_keys=OFF;
43
-
44
- -- CreateIndex
45
- CREATE UNIQUE INDEX "Proxy_name_key" ON "Proxy"("name");
1
+ -- CreateTable
2
+ CREATE TABLE "Proxy" (
3
+ "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
4
+ "name" TEXT NOT NULL,
5
+ "type" TEXT NOT NULL DEFAULT 'socks5',
6
+ "host" TEXT NOT NULL,
7
+ "port" INTEGER NOT NULL,
8
+ "username" TEXT,
9
+ "password" TEXT,
10
+ "note" TEXT,
11
+ "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
12
+ "updatedAt" DATETIME NOT NULL
13
+ );
14
+
15
+ -- RedefineTables
16
+ PRAGMA defer_foreign_keys=ON;
17
+ PRAGMA foreign_keys=OFF;
18
+ CREATE TABLE "new_Bot" (
19
+ "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
20
+ "username" TEXT NOT NULL,
21
+ "password" TEXT,
22
+ "prefix" TEXT DEFAULT '@',
23
+ "note" TEXT,
24
+ "owners" TEXT DEFAULT '',
25
+ "sortOrder" INTEGER,
26
+ "serverId" INTEGER NOT NULL,
27
+ "proxyId" INTEGER,
28
+ "proxyHost" TEXT,
29
+ "proxyPort" INTEGER,
30
+ "proxyUsername" TEXT,
31
+ "proxyPassword" TEXT,
32
+ "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
33
+ "updatedAt" DATETIME NOT NULL,
34
+ CONSTRAINT "Bot_serverId_fkey" FOREIGN KEY ("serverId") REFERENCES "Server" ("id") ON DELETE RESTRICT ON UPDATE CASCADE,
35
+ CONSTRAINT "Bot_proxyId_fkey" FOREIGN KEY ("proxyId") REFERENCES "Proxy" ("id") ON DELETE SET NULL ON UPDATE CASCADE
36
+ );
37
+ INSERT INTO "new_Bot" ("createdAt", "id", "note", "owners", "password", "prefix", "proxyHost", "proxyPassword", "proxyPort", "proxyUsername", "serverId", "sortOrder", "updatedAt", "username") SELECT "createdAt", "id", "note", "owners", "password", "prefix", "proxyHost", "proxyPassword", "proxyPort", "proxyUsername", "serverId", "sortOrder", "updatedAt", "username" FROM "Bot";
38
+ DROP TABLE "Bot";
39
+ ALTER TABLE "new_Bot" RENAME TO "Bot";
40
+ CREATE UNIQUE INDEX "Bot_username_key" ON "Bot"("username");
41
+ PRAGMA foreign_keys=ON;
42
+ PRAGMA defer_foreign_keys=OFF;
43
+
44
+ -- CreateIndex
45
+ CREATE UNIQUE INDEX "Proxy_name_key" ON "Proxy"("name");
@@ -1,3 +1,3 @@
1
- # Please do not edit this file manually
2
- # It should be added in your version-control system (i.e. Git)
1
+ # Please do not edit this file manually
2
+ # It should be added in your version-control system (i.e. Git)
3
3
  provider = "sqlite"