@dollhousemcp/mcp-server 1.4.1 → 1.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +46 -0
- package/README.md +90 -12
- package/dist/config/updateConfig.d.ts +84 -0
- package/dist/config/updateConfig.d.ts.map +1 -0
- package/dist/config/updateConfig.js +148 -0
- package/dist/generated/version.d.ts +9 -0
- package/dist/generated/version.d.ts.map +1 -0
- package/dist/generated/version.js +9 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +34 -6
- package/dist/portfolio/DefaultElementProvider.d.ts +78 -0
- package/dist/portfolio/DefaultElementProvider.d.ts.map +1 -0
- package/dist/portfolio/DefaultElementProvider.js +386 -0
- package/dist/portfolio/PortfolioManager.d.ts +12 -0
- package/dist/portfolio/PortfolioManager.d.ts.map +1 -1
- package/dist/portfolio/PortfolioManager.js +107 -3
- package/dist/portfolio/types.d.ts +6 -6
- package/dist/portfolio/types.d.ts.map +1 -1
- package/dist/portfolio/types.js +7 -7
- package/dist/security/commandValidator.d.ts.map +1 -1
- package/dist/security/commandValidator.js +5 -2
- package/dist/security/securityMonitor.d.ts +2 -1
- package/dist/security/securityMonitor.d.ts.map +1 -1
- package/dist/security/securityMonitor.js +1 -1
- package/dist/server/tools/UpdateTools.d.ts.map +1 -1
- package/dist/server/tools/UpdateTools.js +22 -1
- package/dist/server/types.d.ts +1 -0
- package/dist/server/types.d.ts.map +1 -1
- package/dist/server/types.js +1 -1
- package/dist/update/BackupManager.d.ts +17 -0
- package/dist/update/BackupManager.d.ts.map +1 -1
- package/dist/update/BackupManager.js +112 -3
- package/dist/update/UpdateManager.d.ts +19 -0
- package/dist/update/UpdateManager.d.ts.map +1 -1
- package/dist/update/UpdateManager.js +485 -15
- package/dist/update/VersionManager.d.ts +1 -1
- package/dist/update/VersionManager.d.ts.map +1 -1
- package/dist/update/VersionManager.js +62 -15
- package/dist/utils/fileOperations.d.ts +83 -0
- package/dist/utils/fileOperations.d.ts.map +1 -0
- package/dist/utils/fileOperations.js +291 -0
- package/dist/utils/installation.d.ts +30 -0
- package/dist/utils/installation.d.ts.map +1 -0
- package/dist/utils/installation.js +160 -0
- package/package.json +3 -1
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,52 @@ All notable changes to DollhouseMCP will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [1.4.3] - 2025-08-04
|
|
9
|
+
|
|
10
|
+
### 🚨 Critical Fix
|
|
11
|
+
- **Fixed NPM installation crash** caused by directory name mismatch
|
|
12
|
+
- v1.4.2 installations were completely broken on clean machines
|
|
13
|
+
- Server would crash silently with no error output
|
|
14
|
+
|
|
15
|
+
### Changed
|
|
16
|
+
- **BREAKING**: All element directories now use plural names consistently
|
|
17
|
+
- Portfolio directories: `personas/`, `skills/`, `templates/`, etc.
|
|
18
|
+
- Data directories: `personas/`, `skills/`, `templates/`, etc.
|
|
19
|
+
- This aligns with semantic correctness (directories contain multiple items)
|
|
20
|
+
- Simplified DefaultElementProvider implementation
|
|
21
|
+
- Removed unnecessary mapping layer between directory names
|
|
22
|
+
- Code is now cleaner and more maintainable
|
|
23
|
+
- Improved error logging for initialization failures
|
|
24
|
+
- Added console.error output for Claude Desktop visibility
|
|
25
|
+
- Better debugging information when issues occur
|
|
26
|
+
|
|
27
|
+
### Added
|
|
28
|
+
- **Automatic migration** for existing v1.4.2 installations
|
|
29
|
+
- Renames singular directories to plural automatically
|
|
30
|
+
- Preserves all existing content
|
|
31
|
+
- Logs migration progress for transparency
|
|
32
|
+
- Comprehensive troubleshooting section in README
|
|
33
|
+
- Clear instructions for v1.4.2 users
|
|
34
|
+
- Directory structure documentation
|
|
35
|
+
- NPM upgrade instructions
|
|
36
|
+
|
|
37
|
+
### Technical Details
|
|
38
|
+
- ElementType enum values changed from singular to plural
|
|
39
|
+
- `'persona'` → `'personas'`
|
|
40
|
+
- `'skill'` → `'skills'`
|
|
41
|
+
- `'template'` → `'templates'`
|
|
42
|
+
- `'agent'` → `'agents'`
|
|
43
|
+
- `'memory'` → `'memories'`
|
|
44
|
+
- `'ensemble'` → `'ensembles'`
|
|
45
|
+
- Removed `elementMappings` object from DefaultElementProvider
|
|
46
|
+
- Portfolio directories now match data directory names exactly
|
|
47
|
+
|
|
48
|
+
### Migration Instructions
|
|
49
|
+
If upgrading from v1.4.2:
|
|
50
|
+
1. Update: `npm install -g @dollhousemcp/mcp-server@latest`
|
|
51
|
+
2. The server will automatically migrate your directories on first run
|
|
52
|
+
3. No manual intervention required
|
|
53
|
+
|
|
8
54
|
## [1.4.0] - 2025-08-02
|
|
9
55
|
|
|
10
56
|
### Changed
|
package/README.md
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
[](https://github.com/DollhouseMCP/mcp-server/actions/workflows/core-build-test.yml?query=branch:main "macOS CI Build Status")
|
|
15
15
|
[](https://github.com/DollhouseMCP/mcp-server/actions/workflows/core-build-test.yml?query=branch:main "Linux CI Build Status")
|
|
16
16
|
[](https://github.com/DollhouseMCP/mcp-server/blob/main/Dockerfile)
|
|
17
|
-
[](https://github.com/DollhouseMCP/mcp-server/tree/main/__tests__)
|
|
18
18
|
[](https://github.com/DollhouseMCP/mcp-server)
|
|
19
19
|
|
|
20
20
|
A comprehensive Model Context Protocol (MCP) server that enables dynamic AI persona management with an integrated GitHub-powered collection. DollhouseMCP allows Claude and other compatible AI assistants to activate different behavioral personas while supporting community sharing and monetization.
|
|
@@ -23,7 +23,7 @@ A comprehensive Model Context Protocol (MCP) server that enables dynamic AI pers
|
|
|
23
23
|
**🏪 Collection**: https://github.com/DollhouseMCP/collection
|
|
24
24
|
**📦 NPM Package**: https://www.npmjs.com/package/@dollhousemcp/mcp-server
|
|
25
25
|
**🌍 Website**: https://dollhousemcp.com (planned)
|
|
26
|
-
**📦 Version**: v1.
|
|
26
|
+
**📦 Version**: v1.4.3
|
|
27
27
|
|
|
28
28
|
> **⚠️ Breaking Change Notice**: Tool names have changed from "marketplace" to "collection" terminology. Old names still work but are deprecated. See [Migration Guide](docs/MIGRATION_GUIDE_COLLECTION_RENAME.md) for details.
|
|
29
29
|
|
|
@@ -33,6 +33,9 @@ A comprehensive Model Context Protocol (MCP) server that enables dynamic AI pers
|
|
|
33
33
|
# Install globally
|
|
34
34
|
npm install -g @dollhousemcp/mcp-server
|
|
35
35
|
|
|
36
|
+
# ⚠️ IMPORTANT: If you have v1.4.2, upgrade immediately:
|
|
37
|
+
# npm install -g @dollhousemcp/mcp-server@latest
|
|
38
|
+
|
|
36
39
|
# Add to Claude Desktop config (see path below for your OS)
|
|
37
40
|
# macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
|
|
38
41
|
# Windows: %APPDATA%\Claude\claude_desktop_config.json
|
|
@@ -56,17 +59,18 @@ Restart Claude Desktop and you're ready to use DollhouseMCP! Try `list_personas`
|
|
|
56
59
|
|
|
57
60
|
| Feature | Description |
|
|
58
61
|
|---------|-------------|
|
|
59
|
-
| 🎭 **
|
|
62
|
+
| 🎭 **40 MCP Tools** | Complete portfolio element management through chat interface |
|
|
60
63
|
| 🏪 **GitHub Collection** | Browse, search, install, and submit personas to community collection |
|
|
61
64
|
| 👤 **User Identity System** | Environment-based attribution for persona creators |
|
|
62
65
|
| 🆔 **Unique ID System** | Advanced ID generation: `{type}_{name}_{author}_{YYYYMMDD}-{HHMMSS}` |
|
|
63
66
|
| 💬 **Chat-Based Management** | Create, edit, and validate personas through conversational interface |
|
|
64
67
|
| 🔄 **Real-time Operations** | Live editing with automatic version bumping and validation |
|
|
65
68
|
| 🚀 **Auto-Update System** | Enterprise-grade auto-update with backup/rollback and dependency validation |
|
|
69
|
+
| 📦 **NPM Installation** | Install MCP servers from npm with cross-platform support and atomic operations |
|
|
66
70
|
| 🛡️ **Data Protection** | Copy-on-write for default personas, comprehensive backup system |
|
|
67
71
|
| 🏠 **Local-First Architecture** | Full functionality without cloud dependency |
|
|
68
72
|
|
|
69
|
-
## 🎨 Portfolio Customization Elements
|
|
73
|
+
## 🎨 Portfolio Customization Elements
|
|
70
74
|
|
|
71
75
|
DollhouseMCP introduces a comprehensive portfolio system for customizing AI behavior. Your portfolio is your personal collection of AI customization elements that enhance and tailor your AI experience.
|
|
72
76
|
|
|
@@ -78,6 +82,8 @@ DollhouseMCP introduces a comprehensive portfolio system for customizing AI beha
|
|
|
78
82
|
| 🛠️ **Skills** | Add specific capabilities like code review, data analysis, or creative writing | ✅ Available |
|
|
79
83
|
| 📝 **Templates** | Create reusable response formats for emails, reports, documentation | ✅ Available |
|
|
80
84
|
| 🤖 **Agents** | Build autonomous assistants that can pursue goals and make decisions | ✅ Available |
|
|
85
|
+
| 🧠 **Memory** | Persistent context storage with retention policies and search capabilities | ✅ Available |
|
|
86
|
+
| 🎯 **Ensemble** | Orchestrate multiple elements together as one unified entity | ✅ Available |
|
|
81
87
|
|
|
82
88
|
### Managing Your Portfolio
|
|
83
89
|
|
|
@@ -136,7 +142,7 @@ For backward compatibility, the original persona-specific tools still work:
|
|
|
136
142
|
- `get_active_persona` → calls `get_active_elements type="personas"`
|
|
137
143
|
- etc.
|
|
138
144
|
|
|
139
|
-
## 🔒 Enterprise-Grade Security
|
|
145
|
+
## 🔒 Enterprise-Grade Security
|
|
140
146
|
|
|
141
147
|
DollhouseMCP implements comprehensive security measures to protect your personas and system:
|
|
142
148
|
|
|
@@ -265,9 +271,9 @@ Add DollhouseMCP to your Claude Desktop configuration:
|
|
|
265
271
|
**🔄 After configuration:**
|
|
266
272
|
1. Save the file
|
|
267
273
|
2. Restart Claude Desktop completely
|
|
268
|
-
3. All
|
|
274
|
+
3. All 46 DollhouseMCP tools will be available
|
|
269
275
|
|
|
270
|
-
## 🛠️ Available Tools (
|
|
276
|
+
## 🛠️ Available Tools (46 Total)
|
|
271
277
|
|
|
272
278
|
### Portfolio Element Management (NEW!)
|
|
273
279
|
- **`list_elements`** - List all elements of a specific type
|
|
@@ -719,7 +725,7 @@ DollhouseMCP/
|
|
|
719
725
|
├── __tests__/
|
|
720
726
|
│ ├── unit/ # Unit tests for components
|
|
721
727
|
│ ├── integration/ # Integration tests
|
|
722
|
-
│ └── *.test.ts # Test files (
|
|
728
|
+
│ └── *.test.ts # Test files (600+ tests total)
|
|
723
729
|
├── src/
|
|
724
730
|
│ ├── index.ts # Main MCP server (DollhouseMCPServer)
|
|
725
731
|
│ ├── cache/ # API caching layer
|
|
@@ -745,7 +751,7 @@ DollhouseMCP/
|
|
|
745
751
|
├── scripts/ # Management and utility scripts
|
|
746
752
|
├── Dockerfile # Multi-stage Docker build
|
|
747
753
|
├── docker-compose.yml # Production and development configs
|
|
748
|
-
├── package.json # Project config (dollhousemcp v1.2
|
|
754
|
+
├── package.json # Project config (dollhousemcp v1.4.2)
|
|
749
755
|
├── tsconfig.json # TypeScript configuration
|
|
750
756
|
├── jest.config.cjs # Jest test configuration
|
|
751
757
|
├── setup.sh # Automated installation script
|
|
@@ -895,11 +901,33 @@ export DEBUG="dollhousemcp:*" # Debug logging (optional)
|
|
|
895
901
|
|
|
896
902
|
## 🔧 Troubleshooting
|
|
897
903
|
|
|
904
|
+
### ⚠️ NPM Installation Issues (v1.4.2)
|
|
905
|
+
|
|
906
|
+
If the MCP server crashes on startup after NPM installation:
|
|
907
|
+
1. Check your version: `npm list -g @dollhousemcp/mcp-server`
|
|
908
|
+
2. If you have v1.4.2, upgrade immediately: `npm install -g @dollhousemcp/mcp-server@latest`
|
|
909
|
+
3. Clear your portfolio and let it regenerate: `rm -rf ~/.dollhouse/portfolio`
|
|
910
|
+
|
|
911
|
+
**Note**: v1.4.2 had a critical bug that prevented proper initialization. This has been fixed in v1.4.3.
|
|
912
|
+
|
|
913
|
+
### Directory Structure (v1.4.3+)
|
|
914
|
+
|
|
915
|
+
As of v1.4.3, all element directories use plural names:
|
|
916
|
+
- `~/.dollhouse/portfolio/personas/` (was `persona/` in v1.4.2)
|
|
917
|
+
- `~/.dollhouse/portfolio/skills/` (was `skill/` in v1.4.2)
|
|
918
|
+
- `~/.dollhouse/portfolio/templates/` (was `template/` in v1.4.2)
|
|
919
|
+
- `~/.dollhouse/portfolio/agents/` (was `agent/` in v1.4.2)
|
|
920
|
+
- `~/.dollhouse/portfolio/memories/` (was `memory/` in v1.4.2)
|
|
921
|
+
- `~/.dollhouse/portfolio/ensembles/` (was `ensemble/` in v1.4.2)
|
|
922
|
+
|
|
923
|
+
If you upgraded from v1.4.2, the server will automatically migrate your directories.
|
|
924
|
+
|
|
898
925
|
### Common Issues
|
|
899
926
|
|
|
900
927
|
| Issue | Solution |
|
|
901
928
|
|-------|----------|
|
|
902
|
-
| **
|
|
929
|
+
| **v1.4.2 installation broken** | Upgrade to v1.4.3+ immediately |
|
|
930
|
+
| **Personas not loading** | Check `~/.dollhouse/portfolio/personas/` directory exists |
|
|
903
931
|
| **Server won't start** | Run `npm run rebuild` to clean and rebuild |
|
|
904
932
|
| **Collection not working** | Check internet connection and GitHub API access |
|
|
905
933
|
| **User identity not saving** | Set `DOLLHOUSE_USER` environment variable before starting Claude |
|
|
@@ -1126,7 +1154,57 @@ This project is licensed under the **AGPL-3.0** License with Platform Stability
|
|
|
1126
1154
|
|
|
1127
1155
|
## 🏷️ Version History
|
|
1128
1156
|
|
|
1129
|
-
### v1.2
|
|
1157
|
+
### v1.4.2 - August 4, 2025 (Current)
|
|
1158
|
+
**Critical NPM Installation Fix**:
|
|
1159
|
+
- 🚨 **Fixed NPM installation failure** where empty portfolios caused server crashes
|
|
1160
|
+
- 📦 **DefaultElementProvider** automatically populates default content on first run
|
|
1161
|
+
- 🔍 **Smart path detection** searches multiple NPM/Git installation locations
|
|
1162
|
+
- 💬 **Helpful error messages** guide new users when portfolios are empty
|
|
1163
|
+
- 🔒 **Security hardened** with audit logging and file integrity verification
|
|
1164
|
+
|
|
1165
|
+
### v1.4.1 - August 2, 2025
|
|
1166
|
+
**NPM Installation Support**:
|
|
1167
|
+
- 📦 **Install MCP servers from npm packages** with full cross-platform support
|
|
1168
|
+
- 🔄 **Atomic operations** with transaction-based rollback on failure
|
|
1169
|
+
- 📊 **Progress indicators** for better user experience during long operations
|
|
1170
|
+
- 🏗️ **Centralized configuration** respecting platform conventions (XDG on Linux)
|
|
1171
|
+
- 🛠️ **FileOperations utility** for consistent cross-platform behavior
|
|
1172
|
+
|
|
1173
|
+
### v1.4.0 - August 2, 2025
|
|
1174
|
+
**Complete Element System**:
|
|
1175
|
+
- 🎭 **Ensemble elements** for orchestrating multiple elements together
|
|
1176
|
+
- 🧠 **Memory elements** with retention policies and search capabilities
|
|
1177
|
+
- 🤖 **Agent elements** with goal-oriented decision making
|
|
1178
|
+
- 📝 **Template elements** with secure variable substitution
|
|
1179
|
+
- 🛠️ **Skill elements** with parameter system and proficiency tracking
|
|
1180
|
+
- 🔒 **Comprehensive security** throughout all element types
|
|
1181
|
+
|
|
1182
|
+
### v1.3.3 - August 2, 2025
|
|
1183
|
+
**Portfolio System & Element Types**:
|
|
1184
|
+
- 🎨 **Portfolio-based architecture** for managing all AI customization elements
|
|
1185
|
+
- 🛠️ **Generic element tools** that work with any element type
|
|
1186
|
+
- 📁 **Structured directory layout** under `~/.dollhouse/portfolio/`
|
|
1187
|
+
- 🔄 **Backward compatibility** maintained for existing personas
|
|
1188
|
+
|
|
1189
|
+
### v1.3.2 - August 1, 2025
|
|
1190
|
+
**GitFlow Implementation**:
|
|
1191
|
+
- 🔀 **GitFlow branching model** for better release management
|
|
1192
|
+
- 🏷️ **Automated version tagging** on releases
|
|
1193
|
+
- 📦 **NPM release automation** (pending token configuration)
|
|
1194
|
+
|
|
1195
|
+
### v1.3.1 - July 31, 2025
|
|
1196
|
+
**Collection System Updates**:
|
|
1197
|
+
- 🏪 **Improved collection browsing** with better error handling
|
|
1198
|
+
- 🔍 **Enhanced search functionality** for finding content
|
|
1199
|
+
- 📥 **Better installation process** with validation
|
|
1200
|
+
|
|
1201
|
+
### v1.3.0 - July 30, 2025
|
|
1202
|
+
**Major Architecture Refactor**:
|
|
1203
|
+
- 🏗️ **Element interface system** providing foundation for all element types
|
|
1204
|
+
- 🔐 **Security-first implementation** with comprehensive protections
|
|
1205
|
+
- 📊 **Improved test coverage** reaching 96%+
|
|
1206
|
+
|
|
1207
|
+
### v1.2.5 - July 2025
|
|
1130
1208
|
|
|
1131
1209
|
**Collection Rename & Breaking Changes**:
|
|
1132
1210
|
- 🔄 **Renamed all "marketplace" tools to "collection"**:
|
|
@@ -1140,7 +1218,7 @@ This project is licensed under the **AGPL-3.0** License with Platform Stability
|
|
|
1140
1218
|
- ✅ **Created migration guide** for users to update their scripts
|
|
1141
1219
|
- ✅ **Fixed all date references** from January to July 2025
|
|
1142
1220
|
|
|
1143
|
-
### v1.2.4 - July 10, 2025
|
|
1221
|
+
### v1.2.4 - July 10, 2025
|
|
1144
1222
|
|
|
1145
1223
|
**Critical Fix**:
|
|
1146
1224
|
- ✅ **Fixed MCP protocol compatibility** - console output no longer breaks JSON-RPC communication
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration for update system
|
|
3
|
+
* Supports environment variables and XDG directories
|
|
4
|
+
*/
|
|
5
|
+
export interface UpdateConfig {
|
|
6
|
+
paths: {
|
|
7
|
+
backupDir: string;
|
|
8
|
+
npmBackupDir: string;
|
|
9
|
+
tempDir: string;
|
|
10
|
+
};
|
|
11
|
+
limits: {
|
|
12
|
+
maxSearchDepth: number;
|
|
13
|
+
maxBackupCount: number;
|
|
14
|
+
maxBackupSizeMB: number;
|
|
15
|
+
};
|
|
16
|
+
timeouts: {
|
|
17
|
+
gitCloneMs: number;
|
|
18
|
+
npmInstallMs: number;
|
|
19
|
+
npmUpdateMs: number;
|
|
20
|
+
buildMs: number;
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
export declare class UpdateConfigManager {
|
|
24
|
+
private static instance;
|
|
25
|
+
private config;
|
|
26
|
+
private constructor();
|
|
27
|
+
/**
|
|
28
|
+
* Get singleton instance
|
|
29
|
+
*/
|
|
30
|
+
static getInstance(): UpdateConfigManager;
|
|
31
|
+
/**
|
|
32
|
+
* Get configuration
|
|
33
|
+
*/
|
|
34
|
+
getConfig(): UpdateConfig;
|
|
35
|
+
/**
|
|
36
|
+
* Load configuration from environment and defaults
|
|
37
|
+
*/
|
|
38
|
+
private loadConfiguration;
|
|
39
|
+
/**
|
|
40
|
+
* Get base directory respecting XDG standards on Linux
|
|
41
|
+
*/
|
|
42
|
+
private getBaseDirectory;
|
|
43
|
+
/**
|
|
44
|
+
* Parse integer environment variable with default
|
|
45
|
+
*/
|
|
46
|
+
private parseIntEnv;
|
|
47
|
+
/**
|
|
48
|
+
* Get backup directory path
|
|
49
|
+
*/
|
|
50
|
+
getBackupDir(): string;
|
|
51
|
+
/**
|
|
52
|
+
* Get npm backup directory path
|
|
53
|
+
*/
|
|
54
|
+
getNpmBackupDir(): string;
|
|
55
|
+
/**
|
|
56
|
+
* Get temporary directory path
|
|
57
|
+
*/
|
|
58
|
+
getTempDir(): string;
|
|
59
|
+
/**
|
|
60
|
+
* Get max search depth for installation detection
|
|
61
|
+
*/
|
|
62
|
+
getMaxSearchDepth(): number;
|
|
63
|
+
/**
|
|
64
|
+
* Get max number of backups to keep
|
|
65
|
+
*/
|
|
66
|
+
getMaxBackupCount(): number;
|
|
67
|
+
/**
|
|
68
|
+
* Get timeout for git clone operations
|
|
69
|
+
*/
|
|
70
|
+
getGitCloneTimeout(): number;
|
|
71
|
+
/**
|
|
72
|
+
* Get timeout for npm install operations
|
|
73
|
+
*/
|
|
74
|
+
getNpmInstallTimeout(): number;
|
|
75
|
+
/**
|
|
76
|
+
* Get timeout for npm update operations
|
|
77
|
+
*/
|
|
78
|
+
getNpmUpdateTimeout(): number;
|
|
79
|
+
/**
|
|
80
|
+
* Get timeout for build operations
|
|
81
|
+
*/
|
|
82
|
+
getBuildTimeout(): number;
|
|
83
|
+
}
|
|
84
|
+
//# sourceMappingURL=updateConfig.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"updateConfig.d.ts","sourceRoot":"","sources":["../../src/config/updateConfig.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE;QACL,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,MAAM,EAAE;QACN,cAAc,EAAE,MAAM,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,QAAQ,EAAE;QACR,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAoC;IAC3D,OAAO,CAAC,MAAM,CAAe;IAE7B,OAAO;IAIP;;OAEG;IACH,MAAM,CAAC,WAAW,IAAI,mBAAmB;IAOzC;;OAEG;IACH,SAAS,IAAI,YAAY;IAIzB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAoCzB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAkBxB;;OAEG;IACH,OAAO,CAAC,WAAW;IAenB;;OAEG;IACH,YAAY,IAAI,MAAM;IAItB;;OAEG;IACH,eAAe,IAAI,MAAM;IAIzB;;OAEG;IACH,UAAU,IAAI,MAAM;IAIpB;;OAEG;IACH,iBAAiB,IAAI,MAAM;IAI3B;;OAEG;IACH,iBAAiB,IAAI,MAAM;IAI3B;;OAEG;IACH,kBAAkB,IAAI,MAAM;IAI5B;;OAEG;IACH,oBAAoB,IAAI,MAAM;IAI9B;;OAEG;IACH,mBAAmB,IAAI,MAAM;IAI7B;;OAEG;IACH,eAAe,IAAI,MAAM;CAG1B"}
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
import * as path from 'path';
|
|
2
|
+
import * as os from 'os';
|
|
3
|
+
import { logger } from '../utils/logger.js';
|
|
4
|
+
export class UpdateConfigManager {
|
|
5
|
+
static instance = null;
|
|
6
|
+
config;
|
|
7
|
+
constructor() {
|
|
8
|
+
this.config = this.loadConfiguration();
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Get singleton instance
|
|
12
|
+
*/
|
|
13
|
+
static getInstance() {
|
|
14
|
+
if (!UpdateConfigManager.instance) {
|
|
15
|
+
UpdateConfigManager.instance = new UpdateConfigManager();
|
|
16
|
+
}
|
|
17
|
+
return UpdateConfigManager.instance;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Get configuration
|
|
21
|
+
*/
|
|
22
|
+
getConfig() {
|
|
23
|
+
return this.config;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Load configuration from environment and defaults
|
|
27
|
+
*/
|
|
28
|
+
loadConfiguration() {
|
|
29
|
+
// Determine base directory (respects XDG on Linux)
|
|
30
|
+
const baseDir = this.getBaseDirectory();
|
|
31
|
+
// Load from environment or use defaults
|
|
32
|
+
const config = {
|
|
33
|
+
paths: {
|
|
34
|
+
backupDir: process.env.DOLLHOUSE_BACKUP_DIR ||
|
|
35
|
+
path.join(baseDir, 'backups'),
|
|
36
|
+
npmBackupDir: process.env.DOLLHOUSE_NPM_BACKUP_DIR ||
|
|
37
|
+
path.join(baseDir, 'backups', 'npm'),
|
|
38
|
+
tempDir: process.env.DOLLHOUSE_TEMP_DIR ||
|
|
39
|
+
path.join(os.tmpdir(), 'dollhouse-update')
|
|
40
|
+
},
|
|
41
|
+
limits: {
|
|
42
|
+
maxSearchDepth: this.parseIntEnv('DOLLHOUSE_MAX_SEARCH_DEPTH', 10),
|
|
43
|
+
maxBackupCount: this.parseIntEnv('DOLLHOUSE_MAX_BACKUP_COUNT', 5),
|
|
44
|
+
maxBackupSizeMB: this.parseIntEnv('DOLLHOUSE_MAX_BACKUP_SIZE_MB', 500)
|
|
45
|
+
},
|
|
46
|
+
timeouts: {
|
|
47
|
+
gitCloneMs: this.parseIntEnv('DOLLHOUSE_GIT_CLONE_TIMEOUT_MS', 300000), // 5 minutes
|
|
48
|
+
npmInstallMs: this.parseIntEnv('DOLLHOUSE_NPM_INSTALL_TIMEOUT_MS', 300000), // 5 minutes
|
|
49
|
+
npmUpdateMs: this.parseIntEnv('DOLLHOUSE_NPM_UPDATE_TIMEOUT_MS', 300000), // 5 minutes
|
|
50
|
+
buildMs: this.parseIntEnv('DOLLHOUSE_BUILD_TIMEOUT_MS', 120000) // 2 minutes
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
logger.info('[UpdateConfig] Configuration loaded:', {
|
|
54
|
+
baseDir,
|
|
55
|
+
backupDir: config.paths.backupDir,
|
|
56
|
+
maxSearchDepth: config.limits.maxSearchDepth
|
|
57
|
+
});
|
|
58
|
+
return config;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Get base directory respecting XDG standards on Linux
|
|
62
|
+
*/
|
|
63
|
+
getBaseDirectory() {
|
|
64
|
+
// Check for explicit override
|
|
65
|
+
if (process.env.DOLLHOUSE_BASE_DIR) {
|
|
66
|
+
return process.env.DOLLHOUSE_BASE_DIR;
|
|
67
|
+
}
|
|
68
|
+
// On Linux, respect XDG standards
|
|
69
|
+
if (process.platform === 'linux') {
|
|
70
|
+
const xdgDataHome = process.env.XDG_DATA_HOME;
|
|
71
|
+
if (xdgDataHome) {
|
|
72
|
+
return path.join(xdgDataHome, 'dollhouse');
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
// Default to home directory
|
|
76
|
+
return path.join(os.homedir(), '.dollhouse');
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Parse integer environment variable with default
|
|
80
|
+
*/
|
|
81
|
+
parseIntEnv(key, defaultValue) {
|
|
82
|
+
const value = process.env[key];
|
|
83
|
+
if (!value) {
|
|
84
|
+
return defaultValue;
|
|
85
|
+
}
|
|
86
|
+
const parsed = parseInt(value, 10);
|
|
87
|
+
if (isNaN(parsed)) {
|
|
88
|
+
logger.warn(`[UpdateConfig] Invalid integer value for ${key}: ${value}, using default: ${defaultValue}`);
|
|
89
|
+
return defaultValue;
|
|
90
|
+
}
|
|
91
|
+
return parsed;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Get backup directory path
|
|
95
|
+
*/
|
|
96
|
+
getBackupDir() {
|
|
97
|
+
return this.config.paths.backupDir;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Get npm backup directory path
|
|
101
|
+
*/
|
|
102
|
+
getNpmBackupDir() {
|
|
103
|
+
return this.config.paths.npmBackupDir;
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Get temporary directory path
|
|
107
|
+
*/
|
|
108
|
+
getTempDir() {
|
|
109
|
+
return this.config.paths.tempDir;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Get max search depth for installation detection
|
|
113
|
+
*/
|
|
114
|
+
getMaxSearchDepth() {
|
|
115
|
+
return this.config.limits.maxSearchDepth;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Get max number of backups to keep
|
|
119
|
+
*/
|
|
120
|
+
getMaxBackupCount() {
|
|
121
|
+
return this.config.limits.maxBackupCount;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Get timeout for git clone operations
|
|
125
|
+
*/
|
|
126
|
+
getGitCloneTimeout() {
|
|
127
|
+
return this.config.timeouts.gitCloneMs;
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Get timeout for npm install operations
|
|
131
|
+
*/
|
|
132
|
+
getNpmInstallTimeout() {
|
|
133
|
+
return this.config.timeouts.npmInstallMs;
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Get timeout for npm update operations
|
|
137
|
+
*/
|
|
138
|
+
getNpmUpdateTimeout() {
|
|
139
|
+
return this.config.timeouts.npmUpdateMs;
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Get timeout for build operations
|
|
143
|
+
*/
|
|
144
|
+
getBuildTimeout() {
|
|
145
|
+
return this.config.timeouts.buildMs;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlQ29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbmZpZy91cGRhdGVDb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLElBQUksTUFBTSxNQUFNLENBQUM7QUFDN0IsT0FBTyxLQUFLLEVBQUUsTUFBTSxJQUFJLENBQUM7QUFDekIsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBeUI1QyxNQUFNLE9BQU8sbUJBQW1CO0lBQ3RCLE1BQU0sQ0FBQyxRQUFRLEdBQStCLElBQUksQ0FBQztJQUNuRCxNQUFNLENBQWU7SUFFN0I7UUFDRSxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxXQUFXO1FBQ2hCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNsQyxtQkFBbUIsQ0FBQyxRQUFRLEdBQUcsSUFBSSxtQkFBbUIsRUFBRSxDQUFDO1FBQzNELENBQUM7UUFDRCxPQUFPLG1CQUFtQixDQUFDLFFBQVEsQ0FBQztJQUN0QyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFFRDs7T0FFRztJQUNLLGlCQUFpQjtRQUN2QixtREFBbUQ7UUFDbkQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFFeEMsd0NBQXdDO1FBQ3hDLE1BQU0sTUFBTSxHQUFpQjtZQUMzQixLQUFLLEVBQUU7Z0JBQ0wsU0FBUyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsb0JBQW9CO29CQUNoQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUM7Z0JBQ3hDLFlBQVksRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLHdCQUF3QjtvQkFDcEMs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Q0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQztJQUN4QyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUM7SUFDbkMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsaUJBQWlCO1FBQ2YsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUM7SUFDM0MsQ0FBQztJQUVEOztPQUVHO0lBQ0gsaUJBQWlCO1FBQ2YsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUM7SUFDM0MsQ0FBQztJQUVEOztPQUVHO0lBQ0gsa0JBQWtCO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7T0FFRztJQUNILG9CQUFvQjtRQUNsQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQztJQUMzQyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxtQkFBbUI7UUFDakIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUM7SUFDMUMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsZUFBZTtRQUNiLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDO0lBQ3RDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0ICogYXMgb3MgZnJvbSAnb3MnO1xuaW1wb3J0IHsgbG9nZ2VyIH0gZnJvbSAnLi4vdXRpbHMvbG9nZ2VyLmpzJztcblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIGZvciB1cGRhdGUgc3lzdGVtXG4gKiBTdXBwb3J0cyBlbnZpcm9ubWVudCB2YXJpYWJsZXMgYW5kIFhERyBkaXJlY3Rvcmllc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZUNvbmZpZyB7XG4gIHBhdGhzOiB7XG4gICAgYmFja3VwRGlyOiBzdHJpbmc7XG4gICAgbnBtQmFja3VwRGlyOiBzdHJpbmc7XG4gICAgdGVtcERpcjogc3RyaW5nO1xuICB9O1xuICBsaW1pdHM6IHtcbiAgICBtYXhTZWFyY2hEZXB0aDogbnVtYmVyO1xuICAgIG1heEJhY2t1cENvdW50OiBudW1iZXI7XG4gICAgbWF4QmFja3VwU2l6ZU1COiBudW1iZXI7XG4gIH07XG4gIHRpbWVvdXRzOiB7XG4gICAgZ2l0Q2xvbmVNczogbnVtYmVyO1xuICAgIG5wbUluc3RhbGxNczogbnVtYmVyO1xuICAgIG5wbVVwZGF0ZU1zOiBudW1iZXI7XG4gICAgYnVpbGRNczogbnVtYmVyO1xuICB9O1xufVxuXG5leHBvcnQgY2xhc3MgVXBkYXRlQ29uZmlnTWFuYWdlciB7XG4gIHByaXZhdGUgc3RhdGljIGluc3RhbmNlOiBVcGRhdGVDb25maWdNYW5hZ2VyIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgY29uZmlnOiBVcGRhdGVDb25maWc7XG4gIFxuICBwcml2YXRlIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuY29uZmlnID0gdGhpcy5sb2FkQ29uZmlndXJhdGlvbigpO1xuICB9XG4gIFxuICAvKipcbiAgICogR2V0IHNpbmdsZXRvbiBpbnN0YW5jZVxuICAgKi9cbiAgc3RhdGljIGdldEluc3RhbmNlKCk6IFVwZGF0ZUNvbmZpZ01hbmFnZXIge1xuICAgIGlmICghVXBkYXRlQ29uZmlnTWFuYWdlci5pbnN0YW5jZSkge1xuICAgICAgVXBkYXRlQ29uZmlnTWFuYWdlci5pbnN0YW5jZSA9IG5ldyBVcGRhdGVDb25maWdNYW5hZ2VyKCk7XG4gICAgfVxuICAgIHJldHVybiBVcGRhdGVDb25maWdNYW5hZ2VyLmluc3RhbmNlO1xuICB9XG4gIFxuICAvKipcbiAgICogR2V0IGNvbmZpZ3VyYXRpb25cbiAgICovXG4gIGdldENvbmZpZygpOiBVcGRhdGVDb25maWcge1xuICAgIHJldHVybiB0aGlzLmNvbmZpZztcbiAgfVxuICBcbiAgLyoqXG4gICAqIExvYWQgY29uZmlndXJhdGlvbiBmcm9tIGVudmlyb25tZW50IGFuZCBkZWZhdWx0c1xuICAgKi9cbiAgcHJpdmF0ZSBsb2FkQ29uZmlndXJhdGlvbigpOiBVcGRhdGVDb25maWcge1xuICAgIC8vIERldGVybWluZSBiYXNlIGRpcmVjdG9yeSAocmVzcGVjdHMgWERHIG9uIExpbnV4KVxuICAgIGNvbnN0IGJhc2VEaXIgPSB0aGlzLmdldEJhc2VEaXJlY3RvcnkoKTtcbiAgICBcbiAgICAvLyBMb2FkIGZyb20gZW52aXJvbm1lbnQgb3IgdXNlIGRlZmF1bHRzXG4gICAgY29uc3QgY29uZmlnOiBVcGRhdGVDb25maWcgPSB7XG4gICAgICBwYXRoczoge1xuICAgICAgICBiYWNrdXBEaXI6IHByb2Nlc3MuZW52LkRPTExIT1VTRV9CQUNLVVBfRElSIHx8IFxuICAgICAgICAgICAgICAgICAgIHBhdGguam9pbihiYXNlRGlyLCAnYmFja3VwcycpLFxuICAgICAgICBucG1CYWNrdXBEaXI6IHByb2Nlc3MuZW52LkRPTExIT1VTRV9OUE1fQkFDS1VQX0RJUiB8fCBcbiAgICAgICAgICAgICAgICAgICAgICBwYXRoLmpvaW4oYmFzZURpciwgJ2JhY2t1cHMnLCAnbnBtJyksXG4gICAgICAgIHRlbXBEaXI6IHByb2Nlc3MuZW52LkRPTExIT1VTRV9URU1QX0RJUiB8fCBcbiAgICAgICAgICAgICAgICAgcGF0aC5qb2luKG9zLnRtcGRpcigpLCAnZG9sbGhvdXNlLXVwZGF0ZScpXG4gICAgICB9LFxuICAgICAgbGltaXRzOiB7XG4gICAgICAgIG1heFNlYXJjaERlcHRoOiB0aGlzLnBhcnNlSW50RW52KCdET0xMSE9VU0VfTUFYX1NFQVJDSF9ERVBUSCcsIDEwKSxcbiAgICAgICAgbWF4QmFja3VwQ291bnQ6IHRoaXMucGFyc2VJbnRFbnYoJ0RPTExIT1VTRV9NQVhfQkFDS1VQX0NPVU5UJywgNSksXG4gICAgICAgIG1heEJhY2t1cFNpemVNQjogdGhpcy5wYXJzZUludEVudignRE9MTEhPVVNFX01BWF9CQUNLVVBfU0laRV9NQicsIDUwMClcbiAgICAgIH0sXG4gICAgICB0aW1lb3V0czoge1xuICAgICAgICBnaXRDbG9uZU1zOiB0aGlzLnBhcnNlSW50RW52KCdET0xMSE9VU0VfR0lUX0NMT05FX1RJTUVPVVRfTVMnLCAzMDAwMDApLCAvLyA1IG1pbnV0ZXNcbiAgICAgICAgbnBtSW5zdGFsbE1zOiB0aGlzLnBhcnNlSW50RW52KCdET0xMSE9VU0VfTlBNX0lOU1RBTExfVElNRU9VVF9NUycsIDMwMDAwMCksIC8vIDUgbWludXRlc1xuICAgICAgICBucG1VcGRhdGVNczogdGhpcy5wYXJzZUludEVudignRE9MTEhPVVNFX05QTV9VUERBVEVfVElNRU9VVF9NUycsIDMwMDAwMCksIC8vIDUgbWludXRlc1xuICAgICAgICBidWlsZE1zOiB0aGlzLnBhcnNlSW50RW52KCdET0xMSE9VU0VfQlVJTERfVElNRU9VVF9NUycsIDEyMDAwMCkgLy8gMiBtaW51dGVzXG4gICAgICB9XG4gICAgfTtcbiAgICBcbiAgICBsb2dnZXIuaW5mbygnW1VwZGF0ZUNvbmZpZ10gQ29uZmlndXJhdGlvbiBsb2FkZWQ6Jywge1xuICAgICAgYmFzZURpcixcbiAgICAgIGJhY2t1cERpcjogY29uZmlnLnBhdGhzLmJhY2t1cERpcixcbiAgICAgIG1heFNlYXJjaERlcHRoOiBjb25maWcubGltaXRzLm1heFNlYXJjaERlcHRoXG4gICAgfSk7XG4gICAgXG4gICAgcmV0dXJuIGNvbmZpZztcbiAgfVxuICBcbiAgLyoqXG4gICAqIEdldCBiYXNlIGRpcmVjdG9yeSByZXNwZWN0aW5nIFhERyBzdGFuZGFyZHMgb24gTGludXhcbiAgICovXG4gIHByaXZhdGUgZ2V0QmFzZURpcmVjdG9yeSgpOiBzdHJpbmcge1xuICAgIC8vIENoZWNrIGZvciBleHBsaWNpdCBvdmVycmlkZVxuICAgIGlmIChwcm9jZXNzLmVudi5ET0xMSE9VU0VfQkFTRV9ESVIpIHtcbiAgICAgIHJldHVybiBwcm9jZXNzLmVudi5ET0xMSE9VU0VfQkFTRV9ESVI7XG4gICAgfVxuICAgIFxuICAgIC8vIE9uIExpbnV4LCByZXNwZWN0IFhERyBzdGFuZGFyZHNcbiAgICBpZiAocHJvY2Vzcy5wbGF0Zm9ybSA9PT0gJ2xpbnV4Jykge1xuICAgICAgY29uc3QgeGRnRGF0YUhvbWUgPSBwcm9jZXNzLmVudi5YREdfREFUQV9IT01FO1xuICAgICAgaWYgKHhkZ0RhdGFIb21lKSB7XG4gICAgICAgIHJldHVybiBwYXRoLmpvaW4oeGRnRGF0YUhvbWUsICdkb2xsaG91c2UnKTtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gRGVmYXVsdCB0byBob21lIGRpcmVjdG9yeVxuICAgIHJldHVybiBwYXRoLmpvaW4ob3MuaG9tZWRpcigpLCAnLmRvbGxob3VzZScpO1xuICB9XG4gIFxuICAvKipcbiAgICogUGFyc2UgaW50ZWdlciBlbnZpcm9ubWVudCB2YXJpYWJsZSB3aXRoIGRlZmF1bHRcbiAgICovXG4gIHByaXZhdGUgcGFyc2VJbnRFbnYoa2V5OiBzdHJpbmcsIGRlZmF1bHRWYWx1ZTogbnVtYmVyKTogbnVtYmVyIHtcbiAgICBjb25zdCB2YWx1ZSA9IHByb2Nlc3MuZW52W2tleV07XG4gICAgaWYgKCF2YWx1ZSkge1xuICAgICAgcmV0dXJuIGRlZmF1bHRWYWx1ZTtcbiAgICB9XG4gICAgXG4gICAgY29uc3QgcGFyc2VkID0gcGFyc2VJbnQodmFsdWUsIDEwKTtcbiAgICBpZiAoaXNOYU4ocGFyc2VkKSkge1xuICAgICAgbG9nZ2VyLndhcm4oYFtVcGRhdGVDb25maWddIEludmFsaWQgaW50ZWdlciB2YWx1ZSBmb3IgJHtrZXl9OiAke3ZhbHVlfSwgdXNpbmcgZGVmYXVsdDogJHtkZWZhdWx0VmFsdWV9YCk7XG4gICAgICByZXR1cm4gZGVmYXVsdFZhbHVlO1xuICAgIH1cbiAgICBcbiAgICByZXR1cm4gcGFyc2VkO1xuICB9XG4gIFxuICAvKipcbiAgICogR2V0IGJhY2t1cCBkaXJlY3RvcnkgcGF0aFxuICAgKi9cbiAgZ2V0QmFja3VwRGlyKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnLnBhdGhzLmJhY2t1cERpcjtcbiAgfVxuICBcbiAgLyoqXG4gICAqIEdldCBucG0gYmFja3VwIGRpcmVjdG9yeSBwYXRoXG4gICAqL1xuICBnZXROcG1CYWNrdXBEaXIoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5jb25maWcucGF0aHMubnBtQmFja3VwRGlyO1xuICB9XG4gIFxuICAvKipcbiAgICogR2V0IHRlbXBvcmFyeSBkaXJlY3RvcnkgcGF0aFxuICAgKi9cbiAgZ2V0VGVtcERpcigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmNvbmZpZy5wYXRocy50ZW1wRGlyO1xuICB9XG4gIFxuICAvKipcbiAgICogR2V0IG1heCBzZWFyY2ggZGVwdGggZm9yIGluc3RhbGxhdGlvbiBkZXRlY3Rpb25cbiAgICovXG4gIGdldE1heFNlYXJjaERlcHRoKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnLmxpbWl0cy5tYXhTZWFyY2hEZXB0aDtcbiAgfVxuICBcbiAgLyoqXG4gICAqIEdldCBtYXggbnVtYmVyIG9mIGJhY2t1cHMgdG8ga2VlcFxuICAgKi9cbiAgZ2V0TWF4QmFja3VwQ291bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5jb25maWcubGltaXRzLm1heEJhY2t1cENvdW50O1xuICB9XG4gIFxuICAvKipcbiAgICogR2V0IHRpbWVvdXQgZm9yIGdpdCBjbG9uZSBvcGVyYXRpb25zXG4gICAqL1xuICBnZXRHaXRDbG9uZVRpbWVvdXQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5jb25maWcudGltZW91dHMuZ2l0Q2xvbmVNcztcbiAgfVxuICBcbiAgLyoqXG4gICAqIEdldCB0aW1lb3V0IGZvciBucG0gaW5zdGFsbCBvcGVyYXRpb25zXG4gICAqL1xuICBnZXROcG1JbnN0YWxsVGltZW91dCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmNvbmZpZy50aW1lb3V0cy5ucG1JbnN0YWxsTXM7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBHZXQgdGltZW91dCBmb3IgbnBtIHVwZGF0ZSBvcGVyYXRpb25zXG4gICAqL1xuICBnZXROcG1VcGRhdGVUaW1lb3V0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnLnRpbWVvdXRzLm5wbVVwZGF0ZU1zO1xuICB9XG4gIFxuICAvKipcbiAgICogR2V0IHRpbWVvdXQgZm9yIGJ1aWxkIG9wZXJhdGlvbnNcbiAgICovXG4gIGdldEJ1aWxkVGltZW91dCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmNvbmZpZy50aW1lb3V0cy5idWlsZE1zO1xuICB9XG59Il19
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Auto-generated file - DO NOT EDIT
|
|
3
|
+
* Generated at build time by scripts/generate-version.js
|
|
4
|
+
*/
|
|
5
|
+
export declare const PACKAGE_VERSION = "1.4.3";
|
|
6
|
+
export declare const BUILD_TIMESTAMP = "2025-08-04T21:37:13.111Z";
|
|
7
|
+
export declare const BUILD_TYPE: 'npm' | 'git';
|
|
8
|
+
export declare const PACKAGE_NAME = "@dollhousemcp/mcp-server";
|
|
9
|
+
//# sourceMappingURL=version.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/generated/version.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAO,MAAM,eAAe,UAAU,CAAC;AACvC,eAAO,MAAM,eAAe,6BAA6B,CAAC;AAC1D,eAAO,MAAM,UAAU,EAAE,KAAK,GAAG,KAAa,CAAC;AAC/C,eAAO,MAAM,YAAY,6BAA6B,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Auto-generated file - DO NOT EDIT
|
|
3
|
+
* Generated at build time by scripts/generate-version.js
|
|
4
|
+
*/
|
|
5
|
+
export const PACKAGE_VERSION = '1.4.3';
|
|
6
|
+
export const BUILD_TIMESTAMP = '2025-08-04T21:37:13.111Z';
|
|
7
|
+
export const BUILD_TYPE = 'npm';
|
|
8
|
+
export const PACKAGE_NAME = '@dollhousemcp/mcp-server';
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9nZW5lcmF0ZWQvdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFFSCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsT0FBTyxDQUFDO0FBQ3ZDLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRywwQkFBMEIsQ0FBQztBQUMxRCxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQWtCLEtBQUssQ0FBQztBQUMvQyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsMEJBQTBCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEF1dG8tZ2VuZXJhdGVkIGZpbGUgLSBETyBOT1QgRURJVFxuICogR2VuZXJhdGVkIGF0IGJ1aWxkIHRpbWUgYnkgc2NyaXB0cy9nZW5lcmF0ZS12ZXJzaW9uLmpzXG4gKi9cblxuZXhwb3J0IGNvbnN0IFBBQ0tBR0VfVkVSU0lPTiA9ICcxLjQuMyc7XG5leHBvcnQgY29uc3QgQlVJTERfVElNRVNUQU1QID0gJzIwMjUtMDgtMDRUMjE6Mzc6MTMuMTExWic7XG5leHBvcnQgY29uc3QgQlVJTERfVFlQRTogJ25wbScgfCAnZ2l0JyA9ICducG0nO1xuZXhwb3J0IGNvbnN0IFBBQ0tBR0VfTkFNRSA9ICdAZG9sbGhvdXNlbWNwL21jcC1zZXJ2ZXInO1xuIl19
|
package/dist/index.d.ts
CHANGED
|
@@ -258,6 +258,12 @@ export declare class DollhouseMCPServer implements IToolHandler {
|
|
|
258
258
|
text: string;
|
|
259
259
|
}[];
|
|
260
260
|
}>;
|
|
261
|
+
convertToGitInstallation(targetDir?: string, confirm?: boolean): Promise<{
|
|
262
|
+
content: {
|
|
263
|
+
type: string;
|
|
264
|
+
text: string;
|
|
265
|
+
}[];
|
|
266
|
+
}>;
|
|
261
267
|
/**
|
|
262
268
|
* Configure indicator settings
|
|
263
269
|
*/
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAOA,OAAO,EAA8D,KAAK,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAgBhI,OAAO,EAAe,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAY9D,qBAAa,kBAAmB,YAAW,YAAY;IACrD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAmC;IACnD,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,QAAQ,CAA4B;IAC5C,OAAO,CAAC,gBAAgB,CAA+B;IACvD,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,YAAY,CAAe;;YAuErB,mBAAmB;IA8BjC,OAAO,CAAC,mBAAmB;IAkB3B;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IA2B5B;;;OAGG;IACH,OAAO,CAAC,gBAAgB;YAsBV,YAAY;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAOA,OAAO,EAA8D,KAAK,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAgBhI,OAAO,EAAe,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAY9D,qBAAa,kBAAmB,YAAW,YAAY;IACrD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAmC;IACnD,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,QAAQ,CAA4B;IAC5C,OAAO,CAAC,gBAAgB,CAA+B;IACvD,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,YAAY,CAAe;;YAuErB,mBAAmB;IA8BjC,OAAO,CAAC,mBAAmB;IAkB3B;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IA2B5B;;;OAGG;IACH,OAAO,CAAC,gBAAgB;YAsBV,YAAY;IAkGpB,YAAY;;;;;;IA4CZ,eAAe,CAAC,iBAAiB,EAAE,MAAM;;;;;;IAmCzC,gBAAgB;;;;;;IAuChB,iBAAiB;;;;;;IAiBjB,iBAAiB,CAAC,iBAAiB,EAAE,MAAM;;;;;;IAkC3C,cAAc;;;;;;IAcd,YAAY,CAAC,IAAI,EAAE,MAAM;;;;;;IAsGzB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;;;;;;IA4F1C,iBAAiB,CAAC,IAAI,EAAE,MAAM;;;;;;IAqF9B,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;;;;;;IA6E5C,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;;;;;;IAgJ5C,cAAc,CAAC,IAAI,EAAE,MAAM;;;;;;IA8D3B,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;;;;;;IAmC3D,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;;;;;;IAoCvC,aAAa,CAAC,IAAI,EAAE;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KAAC;;;;;;IAsGvH,WAAW,CAAC,IAAI,EAAE;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,CAAA;KAAC;;;;;;IAiJ7H,eAAe,CAAC,IAAI,EAAE;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAC;;;;;;IA6GpE,aAAa,CAAC,IAAI,EAAE;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,OAAO,CAAA;KAAC;;;;;;IA2NtE,gBAAgB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM;;;;;;IAyChD,gBAAgB,CAAC,KAAK,EAAE,MAAM;;;;;;IA6B9B,oBAAoB,CAAC,IAAI,EAAE,MAAM;;;;;;IA0BjC,cAAc,CAAC,SAAS,EAAE,MAAM;;;;;;IA+ChC,aAAa,CAAC,iBAAiB,EAAE,MAAM;;;;;;IAqFvC,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM;;;;;;IA8DhD,eAAe;;;;;;IAuCf,iBAAiB;;;;;;IAwBvB,OAAO,CAAC,4BAA4B;IAK9B,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;;;;;;IAmM1G,WAAW,CAAC,iBAAiB,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;;;;;;IAyNnE,eAAe,CAAC,iBAAiB,EAAE,MAAM;;;;;;IAyIzC,eAAe;;;;;;IASf,YAAY,CAAC,OAAO,EAAE,OAAO;;;;;;IA+B7B,cAAc,CAAC,OAAO,EAAE,OAAO;;;;;;IAW/B,eAAe;;;;;;IAkBf,wBAAwB,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,GAAE,OAAe;;;;;;IAU3E;;OAEG;IACG,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC;;;;;;IAwGzD;;OAEG;IACG,kBAAkB;;;;;;IA4DxB;;OAEG;IACG,aAAa,CAAC,WAAW,EAAE,MAAM;;;;;;IAqCvC;;OAEG;IACG,iBAAiB,CAAC,eAAe,UAAO;;;;;;IAuB9C;;OAEG;IACG,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,UAAQ;;;;;;IAgCrD;;OAEG;IACG,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,SAAI;;;;;;IAuCtD;;OAEG;IACG,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,UAAQ;;;;;;IAmD5C,GAAG;CAQV"}
|