@sprucelabs/spruce-cli
Version:
Command line interface for building Spruce skills.
575 lines (574 loc) • 11.8 kB
JSON
{
"name": "@sprucelabs/spruce-cli",
"description": "Command line interface for building Spruce skills.",
"publishConfig": {
"access": "public"
},
"version": "29.1.1",
"skill": {
"namespace": "spruce-cli",
"upgradeIgnoreList": [
"chalk",
"commander",
"emphasize",
"inquirer-file-tree-selection-prompt",
"ora",
"terminal-kit",
"open",
"conventional-changelog-sprucelabs"
]
},
"license": "MIT",
"bin": {
"spruce": "./build/index.js"
},
"main": "./build/index.js",
"types": "./build/index.d.ts",
"files": [
"**/*"
],
"keywords": [
"node",
"components",
"sprucebot",
"spruce",
"skills",
"sprucelabs"
],
"homepage": "https://github.com/sprucelabsai/spruce-cli-workspace",
"bugs": {
"url": "https://github.com/sprucelabsai/spruce-cli-workspace/issues"
},
"scripts": {
"build.ci": "yarn build.tsc && yarn build.types && yarn build.resolve-paths && yarn lint",
"build.dev": "yarn build.tsc --sourceMap ; yarn resolve-paths.lint",
"build.tsc": "yarn build.copy-files && tsc",
"build.types": "tsc --emitDeclarationOnly && echo PASS TYPES || (echo FAIL TYPES && false)",
"build.copy-files": "mkdir -p build && rsync -avzq --include='/__tests__/testDirsAndFiles/***' --exclude='*.ts' ./src/ ./build/",
"build.resolve-paths": "resolve-path-aliases --target build --patterns '**/*.js,**/*.d.ts'",
"build.types.resolve-paths.lint": "yarn build.types && yarn resolve-paths.lint",
"resolve-paths.lint": "yarn build.resolve-paths ; yarn lint",
"cache.tests": "node build/tests/buildTestCache",
"clean.test.data": "node build/tests/cleanTestData",
"clean": "yarn clean.build",
"clean.all": "yarn clean.build && yarn clean.dependencies && yarn clean.cache",
"clean.build": "rm -rf build/",
"clean.cache": "rm -rf src/.spruce/tmp && node build/tests/cleanTestCache ; echo '******** TEST CACHE CLEARED ********'",
"clean.cache.disabled": "echo 'CLEAN.CACHE DISABLED'",
"clean.dependencies": "rm -rf node_modules/ package-lock.json yarn.lock",
"fix.lint": "eslint --fix --cache '**/*.ts'",
"lint": "eslint --cache '**/*.ts'",
"lint.tsc": "tsc --noEmit && echo 'spruce-cli PASS'",
"local": "DEBUG=@sprucelabs/cli~debug node --inspect=5200 . $COMMANDS ; echo 'DONE'",
"rebuild": "cd ../ && yarn rebuild",
"release": "semantic-release",
"start": "DEBUG=@sprucelabs/cli~debug node . $COMMANDS",
"test": "yarn cache.tests && jest",
"update.dependencies": "cd ../ && yarn update.dependencies",
"watch.build.dev": "tsc-watch --sourceMap --onCompilationComplete 'yarn run post.watch.build'",
"post.watch.build": "yarn run build.copy-files && yarn run build.resolve-paths",
"watch.lint": "chokidar 'src/**/*' '../spruce-templates/src/**' -c 'yarn lint.tsc'",
"watch.rebuild": "cd ../ && yarn watch.rebuild",
"watch.tests": "yarn cache.tests && jest --watch",
"watch.tsc": "tsc -w --sourceMap"
},
"dependencies": {
"@jest/reporters": "^30.2.0",
"@sprucelabs/error": "^7.1.38",
"@sprucelabs/globby": "^2.0.506",
"@sprucelabs/jest-json-reporter": "^9.0.71",
"@sprucelabs/mercury-client": "^43.1.5",
"@sprucelabs/mercury-core-events": "^27.4.43",
"@sprucelabs/mercury-event-emitter": "^43.1.5",
"@sprucelabs/mercury-types": "^48.0.141",
"@sprucelabs/schema": "^32.3.12",
"@sprucelabs/spruce-core-schemas": "^41.3.41",
"@sprucelabs/spruce-event-utils": "^41.0.160",
"@sprucelabs/spruce-skill-utils": "^32.1.16",
"@sprucelabs/spruce-templates": "^29.1.1",
"@typescript-eslint/eslint-plugin": "^8.46.2",
"@typescript-eslint/parser": "^8.46.2",
"cfonts": "^3.3.1",
"chalk": "4.1.2",
"chokidar": "^4.0.3",
"cli-table3": "^0.6.5",
"commander": "7.2.0",
"emphasize": "4.2.0",
"fs-extra": "^11.3.2",
"inquirer": "^8.2.4",
"inquirer-file-tree-selection-prompt": "1.0.18",
"js-tetris-cli": "^0.0.3",
"md5": "^2.3.0",
"open": "^8.4.2",
"ora": "5.4.1",
"semver": "^7.7.3",
"string-argv": "^0.3.2",
"terminal-kit": "sprucelabsai/terminal-kit",
"tree-kill": "^1.2.2",
"tsutils": "^3.21.0",
"typescript": "^5.9.3"
},
"devDependencies": {
"@sprucelabs/data-stores": "^30.0.112",
"@sprucelabs/heartwood-view-controllers": "^126.12.38",
"@sprucelabs/resolve-path-aliases": "^3.0.29",
"@sprucelabs/spruce-conversation-plugin": "^74.2.21",
"@sprucelabs/spruce-deploy-plugin": "^74.2.21",
"@sprucelabs/spruce-store-plugin": "^74.2.21",
"@sprucelabs/spruce-test-fixtures": "^74.2.21",
"@sprucelabs/test": "^10.0.25",
"@sprucelabs/test-utils": "^6.0.117",
"@types/blessed": "^0.1.25",
"@types/eslint": "^9.6.1",
"@types/fs-extra": "^11.0.4",
"@types/inquirer": "^9.0.9",
"@types/lodash": "^4.17.20",
"@types/md5": "^2.3.6",
"@types/node": "^24.9.1",
"@types/promise.allsettled": "^1.0.6",
"@types/ps-node": "^0.1.3",
"@types/semver": "^7.7.1",
"@types/sha1": "^1.1.5",
"@types/slug": "^5.0.9",
"@types/superagent": "^8.1.9",
"@types/terminal-kit": "^2.5.7",
"chokidar-cli": "^3.0.0",
"concurrently": "^9.2.1",
"conventional-changelog-sprucelabs": "2.0.1",
"dotenv": "^17.2.3",
"eslint": "^9.38.0",
"eslint-config-spruce": "^11.2.26",
"find-process": "^2.0.0",
"jest": "^30.2.0",
"jest-circus": "^30.2.0",
"jest-junit": "^16.0.0",
"jest-reporters": "^0.0.2",
"prettier": "^3.6.2",
"ps-node": "^0.1.6",
"ts-jest": "^29.4.5",
"ts-node": "^10.9.2",
"tsc-watch": "^7.2.0",
"tsconfig-paths": "^4.2.0"
},
"testSkillCache": {
"everything": [
{
"code": "skill",
"options": {
"name": "everything skill",
"description": "this too, is a great test!"
}
},
{
"code": "schema"
},
{
"code": "test"
},
{
"code": "permission"
},
{
"code": "event"
},
{
"code": "view"
},
{
"code": "deploy"
},
{
"code": "conversation"
},
{
"code": "polish"
}
],
"everythingInNode": [
{
"code": "node",
"options": {
"name": "everything node",
"description": "this too, is a great node modules!"
}
},
{
"code": "schema"
},
{
"code": "error"
},
{
"code": "test"
},
{
"code": "permission"
},
{
"code": "event"
}
],
"skills": [
{
"code": "skill",
"options": {
"name": "test skill",
"description": "this too, is a great test!"
}
}
],
"schemas": [
{
"code": "skill",
"options": {
"name": "testing schemas",
"description": "this is a great test!"
}
},
{
"code": "schema"
}
],
"tests": [
{
"code": "skill",
"options": {
"name": "testing tests",
"description": "test testing!"
}
},
{
"code": "test"
}
],
"testsInNodeModule": [
{
"code": "node",
"options": {
"name": "testing tests in node module",
"description": "test testing!"
}
},
{
"code": "test"
}
],
"events": [
{
"code": "skill",
"options": {
"name": "testing events",
"description": "this too, is a great test!"
}
},
{
"code": "schema"
},
{
"code": "permission"
},
{
"code": "event"
}
],
"polish": [
{
"code": "skill",
"options": {
"name": "testing polish",
"description": "this too, is a great test!"
}
},
{
"code": "polish"
}
],
"sandbox": [
{
"code": "skill",
"options": {
"name": "testing sandbox",
"description": "this too, is a great test!"
}
},
{
"code": "schema"
},
{
"code": "permission"
},
{
"code": "event"
},
{
"code": "sandbox"
}
],
"conversation": [
{
"code": "skill",
"options": {
"name": "testing conversations",
"description": "this too, is a great test!"
}
},
{
"code": "schema"
},
{
"code": "permission"
},
{
"code": "event"
},
{
"code": "conversation"
}
],
"conversation-with-sandbox": [
{
"code": "skill",
"options": {
"name": "testing conversations",
"description": "this too, is a great test!"
}
},
{
"code": "schema"
},
{
"code": "permission"
},
{
"code": "event"
},
{
"code": "conversation"
},
{
"code": "sandbox"
}
],
"errors": [
{
"code": "skill",
"options": {
"name": "testing errors",
"description": "this is also a great test!"
}
},
{
"code": "error"
}
],
"schemasInNodeModule": [
{
"code": "node",
"options": {
"name": "plain node module",
"description": "go team!"
}
},
{
"code": "schema"
}
],
"node": [
{
"code": "node",
"options": {
"name": "plain node module",
"description": "go team!"
}
}
],
"eventsInNodeModule": [
{
"code": "node",
"options": {
"name": "event test skill",
"description": "go team!"
}
},
{
"code": "event"
}
],
"permissions": [
{
"code": "skill",
"options": {
"name": "testing permissions",
"description": "This is for permissions"
}
},
{
"code": "permission"
},
{
"code": "event"
},
{
"code": "permission"
}
],
"organizations": [
{
"code": "skill",
"options": {
"name": "testing events",
"description": "this too, is a great test!"
}
},
{
"code": "schema"
},
{
"code": "permission"
},
{
"code": "event"
},
{
"code": "organization"
}
],
"deploy": [
{
"code": "skill",
"options": {
"name": "deploy test skill",
"description": "go team!"
}
},
{
"code": "deploy"
}
],
"stores": [
{
"code": "skill",
"options": {
"name": "data stores test skill",
"description": "go team!"
}
},
{
"code": "store"
}
],
"storesWithTests": [
{
"code": "skill",
"options": {
"name": "data stores test skill",
"description": "go team!"
}
},
{
"code": "test"
},
{
"code": "store"
}
],
"deployWithTests": [
{
"code": "skill",
"options": {
"name": "deploy test skill",
"description": "go team!"
}
},
{
"code": "test"
},
{
"code": "deploy"
}
],
"views": [
{
"code": "skill",
"options": {
"name": "testing views",
"description": "this too, is a great test!"
}
},
{
"code": "schema"
},
{
"code": "permission"
},
{
"code": "event"
},
{
"code": "view"
}
],
"viewsWithTests": [
{
"code": "skill",
"options": {
"name": "views with tests",
"description": "this too, is a great test!"
}
},
{
"code": "schema"
},
{
"code": "permission"
},
{
"code": "event"
},
{
"code": "test"
},
{
"code": "view"
}
]
},
"jest": {
"maxWorkers": 2,
"testTimeout": 600000,
"testEnvironment": "node",
"testPathIgnorePatterns": [
"<rootDir>/tmp/",
"<rootDir>/src/",
"<rootDir>/node_modules/",
"<rootDir>/build/__tests__/testDirsAndFiles/"
],
"watchPathIgnorePatterns": [
"<rootDir>/src/"
],
"testMatch": [
"**/__tests__/**/*.test.js?(x)"
],
"moduleNameMapper": {
"^#spruce/schemas/fields/(.*)": "<rootDir>/node_modules/@sprucelabs/schema/build/.spruce/schemas/fields/$1",
"^#spruce/(.*)$": "<rootDir>/build/.spruce/$1"
}
},
"jest-junit": {
"addFileAttribute": "true"
},
"yarn-upgrade-all": {
"ignore": [
"chalk",
"commander",
"emphasize",
"inquirer-file-tree-selection-prompt",
"ora",
"terminal-kit",
"inquirer",
"open",
"conventional-changelog-sprucelabs"
]
},
"gitHead": "845fd4d6d04a29f5f4d0d045e572b9285b5c9ad0"
}