@getxflow/cli 1.0.4 → 1.0.6

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.
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SKILL_IN_PROJECT = void 0;
4
4
  exports.skillCopyPaths = skillCopyPaths;
5
5
  exports.replacePointer = replacePointer;
6
+ exports.isPointerOnly = isPointerOnly;
6
7
  exports.copyIsStale = copyIsStale;
7
8
  exports.staleSkillCopy = staleSkillCopy;
8
9
  exports.installSkillQuietly = installSkillQuietly;
@@ -118,6 +119,10 @@ function replacePointer(text) {
118
119
  const tail = after < 0 ? '' : `\n${text.slice(after + 1)}`;
119
120
  return `${text.slice(0, start)}${POINTER}${tail}`;
120
121
  }
122
+ /** Our pointer and nothing else: laid down by link, so it is not project code. */
123
+ function isPointerOnly(text) {
124
+ return text.trim() === POINTER.trim();
125
+ }
121
126
  /** The file belongs to the user: created only on install, rewritten only where ours is. */
122
127
  function writePointer(base, create) {
123
128
  const path = (0, node_path_1.join)(base, 'AGENTS.md');
package/dist/tree.js CHANGED
@@ -124,7 +124,11 @@ function collectFiles(root, rules) {
124
124
  continue;
125
125
  if (isIgnored(rel, rules, false))
126
126
  continue;
127
- files.push({ path: rel, content: normalizeEol((0, node_fs_1.readFileSync)(full)) });
127
+ const content = normalizeEol((0, node_fs_1.readFileSync)(full));
128
+ // A bare AGENTS.md pointer would read as a root change nobody deployed.
129
+ if (rel === 'AGENTS.md' && (0, skills_1.isPointerOnly)(content.toString('utf-8')))
130
+ continue;
131
+ files.push({ path: rel, content });
128
132
  }
129
133
  };
130
134
  walk(root);
package/dist/version.js CHANGED
@@ -2,6 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DEFAULT_API_URL = exports.CLI_VERSION = void 0;
4
4
  /** Keep in sync with cli/package.json. */
5
- exports.CLI_VERSION = '1.0.4';
5
+ exports.CLI_VERSION = '1.0.6';
6
6
  /** Overridden by XFLOW_API_URL or the `api` field in xflow.json. */
7
7
  exports.DEFAULT_API_URL = 'https://app.getxflow.com';
package/package.json CHANGED
@@ -1,24 +1,24 @@
1
- {
2
- "name": "@getxflow/cli",
3
- "version": "1.0.4",
4
- "description": "CLI for the XFlow platform: projects with apps, functions and a database; source sync, deployment and publishing",
5
- "license": "UNLICENSED",
6
- "engines": {
7
- "node": ">=20"
8
- },
9
- "bin": {
10
- "xflow": "dist/bin.js"
11
- },
12
- "files": [
13
- "dist",
14
- "skills"
15
- ],
16
- "scripts": {
17
- "clean": "node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"",
18
- "build": "npm run clean && tsc -p tsconfig.json",
19
- "prepublishOnly": "npm run build"
20
- },
21
- "publishConfig": {
22
- "access": "public"
23
- }
24
- }
1
+ {
2
+ "name": "@getxflow/cli",
3
+ "version": "1.0.6",
4
+ "description": "CLI for the XFlow platform: projects with apps, functions and a database; source sync, deployment and publishing",
5
+ "license": "UNLICENSED",
6
+ "engines": {
7
+ "node": ">=20"
8
+ },
9
+ "bin": {
10
+ "xflow": "dist/bin.js"
11
+ },
12
+ "files": [
13
+ "dist",
14
+ "skills"
15
+ ],
16
+ "scripts": {
17
+ "clean": "node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"",
18
+ "build": "npm run clean && tsc -p tsconfig.json",
19
+ "prepublishOnly": "npm run build"
20
+ },
21
+ "publishConfig": {
22
+ "access": "public"
23
+ }
24
+ }