@neturely/okffs 0.2.2 → 0.4.0
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/.changes/README.md +29 -0
- package/CHANGELOG.md +30 -1
- package/README.md +62 -4
- package/dist/config.d.ts +9 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +45 -0
- package/dist/config.js.map +1 -1
- package/dist/docs.d.ts +6 -0
- package/dist/docs.d.ts.map +1 -1
- package/dist/docs.js +78 -15
- package/dist/docs.js.map +1 -1
- package/dist/github.d.ts +2 -0
- package/dist/github.d.ts.map +1 -1
- package/dist/github.js +1 -1
- package/dist/github.js.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/projects.d.ts +27 -0
- package/dist/projects.d.ts.map +1 -0
- package/dist/projects.js +281 -0
- package/dist/projects.js.map +1 -0
- package/dist/tools/create_issue.d.ts +7 -1
- package/dist/tools/create_issue.d.ts.map +1 -1
- package/dist/tools/create_issue.js +154 -1
- package/dist/tools/create_issue.js.map +1 -1
- package/dist/tools/create_pull_request.d.ts +1 -1
- package/dist/tools/create_pull_request.d.ts.map +1 -1
- package/dist/tools/create_pull_request.js +1 -1
- package/dist/tools/create_pull_request.js.map +1 -1
- package/dist/tools/list_issues.d.ts +1 -1
- package/dist/tools/list_issues.d.ts.map +1 -1
- package/dist/tools/list_issues.js +70 -2
- package/dist/tools/list_issues.js.map +1 -1
- package/dist/tools/prepare_release.d.ts.map +1 -1
- package/dist/tools/prepare_release.js +22 -5
- package/dist/tools/prepare_release.js.map +1 -1
- package/dist/tools/update_project_status.d.ts +20 -0
- package/dist/tools/update_project_status.d.ts.map +1 -0
- package/dist/tools/update_project_status.js +39 -0
- package/dist/tools/update_project_status.js.map +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create_pull_request.js","sourceRoot":"","sources":["../../src/tools/create_pull_request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,QAAQ,EACR,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,2BAA2B,EAC3B,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,eAAe,GAChB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,GAAG,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE/C,MAAM,CAAC,MAAM,IAAI,GAAG,qBAAqB,CAAC;AAE1C,MAAM,CAAC,MAAM,WAAW,GACtB,
|
|
1
|
+
{"version":3,"file":"create_pull_request.js","sourceRoot":"","sources":["../../src/tools/create_pull_request.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export declare const name = "list_issues";
|
|
3
|
-
export declare const description = "List all open GitHub issues, each with its branch, any linked open or draft PR, and its relationships (parent, children, blocked-by, blocking) shown as a tree. Replaces the need for a separate PR-listing tool.";
|
|
3
|
+
export declare const description = "List all open GitHub issues, each with its branch, any linked open or draft PR, its board column (project), its Priority, and its relationships (parent, children, blocked-by, blocking) shown as a tree. Issues are ordered by Priority (Urgent \u2192 High \u2192 Medium \u2192 Low \u2192 unset) so the most important work surfaces first \u2014 factor Priority in when deciding what to do next. Replaces the need for a separate PR-listing tool.";
|
|
4
4
|
export declare const inputSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
|
|
5
5
|
export declare function handler(_input: z.infer<typeof inputSchema>): Promise<{
|
|
6
6
|
content: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list_issues.d.ts","sourceRoot":"","sources":["../../src/tools/list_issues.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"list_issues.d.ts","sourceRoot":"","sources":["../../src/tools/list_issues.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAcxB,eAAO,MAAM,IAAI,gBAAgB,CAAC;AAElC,eAAO,MAAM,WAAW,6bAC2Y,CAAC;AAEpa,eAAO,MAAM,WAAW,gDAAe,CAAC;AAWxC,wBAAsB,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC;;;;;GAoHhE"}
|
|
@@ -1,10 +1,60 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { listIssues, listOpenPullRequests, parseRelationships, buildBranchName, extractBranchFromBody, owner, repo, } from "../github.js";
|
|
3
|
+
import { config } from "../config.js";
|
|
4
|
+
import { getProjectFieldsByIssueNumber, getOrgIssueFieldValuesByNumber } from "../projects.js";
|
|
3
5
|
export const name = "list_issues";
|
|
4
|
-
export const description = "List all open GitHub issues, each with its branch, any linked open or draft PR, and its relationships (parent, children, blocked-by, blocking) shown as a tree. Replaces the need for a separate PR-listing tool.";
|
|
6
|
+
export const description = "List all open GitHub issues, each with its branch, any linked open or draft PR, its board column (project), its Priority, and its relationships (parent, children, blocked-by, blocking) shown as a tree. Issues are ordered by Priority (Urgent → High → Medium → Low → unset) so the most important work surfaces first — factor Priority in when deciding what to do next. Replaces the need for a separate PR-listing tool.";
|
|
5
7
|
export const inputSchema = z.object({});
|
|
8
|
+
// Board Priority order (highest first); unknown named priorities rank between the
|
|
9
|
+
// known set and unset, so custom option names still sort ahead of no priority.
|
|
10
|
+
const PRIORITY_ORDER = ["Urgent", "High", "Medium", "Low"];
|
|
11
|
+
function priorityRank(p) {
|
|
12
|
+
if (!p)
|
|
13
|
+
return 99;
|
|
14
|
+
const i = PRIORITY_ORDER.indexOf(p);
|
|
15
|
+
return i === -1 ? 50 : i;
|
|
16
|
+
}
|
|
6
17
|
export async function handler(_input) {
|
|
7
18
|
const [issues, prs] = await Promise.all([listIssues(), listOpenPullRequests()]);
|
|
19
|
+
// Board Status + Priority per issue. Non-fatal: if a project fetch fails (e.g.
|
|
20
|
+
// token lacks the permission), the listing still renders without that field.
|
|
21
|
+
let projectStatus = new Map();
|
|
22
|
+
let priorityByIssue = new Map();
|
|
23
|
+
let effortByIssue = new Map();
|
|
24
|
+
if (config.projectEnabled && config.projectId) {
|
|
25
|
+
try {
|
|
26
|
+
const fields = await getProjectFieldsByIssueNumber();
|
|
27
|
+
for (const [num, f] of fields) {
|
|
28
|
+
if (f.status)
|
|
29
|
+
projectStatus.set(num, f.status);
|
|
30
|
+
if (f.priority)
|
|
31
|
+
priorityByIssue.set(num, f.priority); // project-native
|
|
32
|
+
if (f.effort)
|
|
33
|
+
effortByIssue.set(num, f.effort);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
catch (err) {
|
|
37
|
+
console.warn("[okffs] Failed to fetch project fields:", err instanceof Error ? err.message : err);
|
|
38
|
+
}
|
|
39
|
+
// Org-level Issue Field values (Priority/Effort on Neturely-style boards).
|
|
40
|
+
// Needs the org permission, so only attempt when opted into a classic PAT.
|
|
41
|
+
if (config.classicPat) {
|
|
42
|
+
try {
|
|
43
|
+
const orgValues = await getOrgIssueFieldValuesByNumber();
|
|
44
|
+
for (const [num, vals] of orgValues) {
|
|
45
|
+
const p = vals.get("priority");
|
|
46
|
+
const e = vals.get("effort");
|
|
47
|
+
if (p)
|
|
48
|
+
priorityByIssue.set(num, p); // org value wins
|
|
49
|
+
if (e)
|
|
50
|
+
effortByIssue.set(num, e);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
catch (err) {
|
|
54
|
+
console.warn("[okffs] Failed to fetch org Issue Field values:", err instanceof Error ? err.message : err);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
8
58
|
if (issues.length === 0) {
|
|
9
59
|
return {
|
|
10
60
|
content: [{ type: "text", text: "No open issues." }],
|
|
@@ -23,7 +73,13 @@ export async function handler(_input) {
|
|
|
23
73
|
}
|
|
24
74
|
}
|
|
25
75
|
const fmt = (nums) => nums.map((n) => `#${n}`).join(", ");
|
|
26
|
-
|
|
76
|
+
// Order by Priority (highest first), then by issue number descending within the
|
|
77
|
+
// same priority, so the listing itself surfaces what matters most first.
|
|
78
|
+
const ordered = [...issues].sort((a, b) => {
|
|
79
|
+
const byPriority = priorityRank(priorityByIssue.get(a.number)) - priorityRank(priorityByIssue.get(b.number));
|
|
80
|
+
return byPriority !== 0 ? byPriority : b.number - a.number;
|
|
81
|
+
});
|
|
82
|
+
const blocks = ordered.map((issue) => {
|
|
27
83
|
const branch = extractBranchFromBody(issue.body) ?? buildBranchName(issue.number, issue.title);
|
|
28
84
|
const branchUrl = `https://github.com/${owner}/${repo}/tree/${branch}`;
|
|
29
85
|
const pr = prByBranch.get(branch);
|
|
@@ -38,6 +94,18 @@ export async function handler(_input) {
|
|
|
38
94
|
if (pr) {
|
|
39
95
|
lines.push(` PR: #${pr.number} (${pr.draft ? "draft" : "open"}) ${pr.html_url}`);
|
|
40
96
|
}
|
|
97
|
+
const status = projectStatus.get(issue.number);
|
|
98
|
+
if (status) {
|
|
99
|
+
lines.push(` project: ${status}`);
|
|
100
|
+
}
|
|
101
|
+
const priority = priorityByIssue.get(issue.number);
|
|
102
|
+
if (priority) {
|
|
103
|
+
lines.push(` priority: ${priority}`);
|
|
104
|
+
}
|
|
105
|
+
const effort = effortByIssue.get(issue.number);
|
|
106
|
+
if (effort) {
|
|
107
|
+
lines.push(` effort: ${effort}`);
|
|
108
|
+
}
|
|
41
109
|
// Relationships as a small tree under the issue.
|
|
42
110
|
const relLines = [];
|
|
43
111
|
if (rels.parent.length)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list_issues.js","sourceRoot":"","sources":["../../src/tools/list_issues.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,UAAU,EACV,oBAAoB,EACpB,kBAAkB,EAClB,eAAe,EACf,qBAAqB,EACrB,KAAK,EACL,IAAI,GAEL,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"list_issues.js","sourceRoot":"","sources":["../../src/tools/list_issues.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prepare_release.d.ts","sourceRoot":"","sources":["../../src/tools/prepare_release.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,eAAO,MAAM,IAAI,oBAAoB,CAAC;AAEtC,eAAO,MAAM,WAAW,onBAC4kB,CAAC;AAErmB,eAAO,MAAM,WAAW;;;;;;;;;;;;EAItB,CAAC;AA4BH,wBAAsB,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC;;;;;
|
|
1
|
+
{"version":3,"file":"prepare_release.d.ts","sourceRoot":"","sources":["../../src/tools/prepare_release.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,eAAO,MAAM,IAAI,oBAAoB,CAAC;AAEtC,eAAO,MAAM,WAAW,onBAC4kB,CAAC;AAErmB,eAAO,MAAM,WAAW;;;;;;;;;;;;EAItB,CAAC;AA4BH,wBAAsB,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC;;;;;GAmK/D"}
|
|
@@ -2,7 +2,7 @@ import { z } from "zod";
|
|
|
2
2
|
import fs from "fs";
|
|
3
3
|
import path from "path";
|
|
4
4
|
import { createPullRequest, getDefaultBranch } from "../github.js";
|
|
5
|
-
import { getUnreleasedSection, rollChangelogForRelease } from "../docs.js";
|
|
5
|
+
import { getUnreleasedSection, rollChangelogForRelease, foldFragmentsIntoChangelog } from "../docs.js";
|
|
6
6
|
import { git, currentBranch } from "../git.js";
|
|
7
7
|
export const name = "prepare_release";
|
|
8
8
|
export const description = "Prepare a release: bump the version in package.json and package-lock.json, roll the CHANGELOG ([Unreleased] → a dated version section with a fresh empty [Unreleased] and updated compare links), commit on a release branch, and open a PR. It does NOT tag or publish — tagging vX.Y.Z (which triggers the CI npm publish) stays a manual step after merge. Provide an explicit `version` or a `bump` level; if neither is given, a level is inferred from the [Unreleased] entries (### Added → minor, otherwise patch) and surfaced for confirmation. Two-step: call once to preview, re-call with confirmed: true to apply.";
|
|
@@ -42,13 +42,17 @@ export async function handler(input) {
|
|
|
42
42
|
const base = process.cwd();
|
|
43
43
|
const pkg = JSON.parse(fs.readFileSync(path.join(base, "package.json"), "utf8"));
|
|
44
44
|
const currentVersion = pkg.version;
|
|
45
|
-
const
|
|
45
|
+
const changelogRaw = fs.readFileSync(path.join(base, "CHANGELOG.md"), "utf8");
|
|
46
|
+
// Fold any per-issue fragments (#105) into [Unreleased] before the emptiness
|
|
47
|
+
// and bump-level checks, so entries that live in .changes/unreleased/ count.
|
|
48
|
+
const previewFold = foldFragmentsIntoChangelog(changelogRaw, base);
|
|
49
|
+
const changelog = previewFold.changelog;
|
|
46
50
|
const unreleased = getUnreleasedSection(changelog);
|
|
47
51
|
if (unreleased === null) {
|
|
48
52
|
return { content: [{ type: "text", text: "CHANGELOG.md has no ## [Unreleased] section — nothing to release." }] };
|
|
49
53
|
}
|
|
50
54
|
if (!/^[-*] /m.test(unreleased)) {
|
|
51
|
-
return { content: [{ type: "text", text: "The ## [Unreleased] section has no entries — nothing to release." }] };
|
|
55
|
+
return { content: [{ type: "text", text: "The ## [Unreleased] section has no entries (and no .changes/unreleased fragments) — nothing to release." }] };
|
|
52
56
|
}
|
|
53
57
|
// Resolve the target version.
|
|
54
58
|
let targetVersion;
|
|
@@ -75,8 +79,9 @@ export async function handler(input) {
|
|
|
75
79
|
` target: ${targetVersion} (${how})\n` +
|
|
76
80
|
` branch: ${branch}\n\n` +
|
|
77
81
|
`Will: bump package.json + package-lock.json, roll the CHANGELOG into "## [${targetVersion}]", ` +
|
|
82
|
+
(previewFold.count > 0 ? `assemble ${previewFold.count} changelog fragment(s) and delete them, ` : ``) +
|
|
78
83
|
`commit on ${branch}, and open a PR. It will NOT tag or publish.\n\n` +
|
|
79
|
-
`[Unreleased] entries to be released:\n${unreleased}\n\n` +
|
|
84
|
+
`[Unreleased] entries to be released${previewFold.count > 0 ? " (fragments included)" : ""}:\n${unreleased}\n\n` +
|
|
80
85
|
`Re-call prepare_release with confirmed: true to apply.`,
|
|
81
86
|
}],
|
|
82
87
|
};
|
|
@@ -84,6 +89,7 @@ export async function handler(input) {
|
|
|
84
89
|
const baseBranch = await getDefaultBranch();
|
|
85
90
|
const previousBranch = currentBranch();
|
|
86
91
|
let prepared = false;
|
|
92
|
+
let fragmentsAssembled = 0;
|
|
87
93
|
try {
|
|
88
94
|
git(["fetch", "origin"]);
|
|
89
95
|
git(["checkout", "-B", branch, `origin/${baseBranch}`]);
|
|
@@ -108,10 +114,18 @@ export async function handler(input) {
|
|
|
108
114
|
// reformatting; package-lock has two self-version fields (root + packages[""]).
|
|
109
115
|
const newPkg = replaceExactly(pkgRaw, `"version": "${fromVersion}"`, `"version": "${targetVersion}"`, 1, "package.json");
|
|
110
116
|
const newLock = replaceExactly(lockRaw, `"version": "${fromVersion}"`, `"version": "${targetVersion}"`, 2, "package-lock.json");
|
|
111
|
-
|
|
117
|
+
// Assemble fragments from the base branch's working tree, then roll. The
|
|
118
|
+
// fragments were committed on their issue branches and merged into base, so
|
|
119
|
+
// they're present here; we delete them in the same release commit (#105).
|
|
120
|
+
const applyFold = foldFragmentsIntoChangelog(clRaw, base);
|
|
121
|
+
const newCl = rollChangelogForRelease(applyFold.changelog, targetVersion, fromVersion, date);
|
|
112
122
|
fs.writeFileSync(pkgPath, newPkg);
|
|
113
123
|
fs.writeFileSync(lockPath, newLock);
|
|
114
124
|
fs.writeFileSync(clPath, newCl);
|
|
125
|
+
fragmentsAssembled = applyFold.consumed.length;
|
|
126
|
+
if (applyFold.consumed.length > 0) {
|
|
127
|
+
git(["rm", "--quiet", "--", ...applyFold.consumed]);
|
|
128
|
+
}
|
|
115
129
|
git(["add", "package.json", "package-lock.json", "CHANGELOG.md"]);
|
|
116
130
|
git(["commit", "-m", `release: ${targetVersion}`]);
|
|
117
131
|
git(["push", "-u", "origin", branch]);
|
|
@@ -140,6 +154,9 @@ export async function handler(input) {
|
|
|
140
154
|
``,
|
|
141
155
|
`- Bumped \`package.json\` and \`package-lock.json\` to ${targetVersion}.`,
|
|
142
156
|
`- Rolled the CHANGELOG \`[Unreleased]\` section into \`## [${targetVersion}]\` and refreshed the compare links.`,
|
|
157
|
+
...(fragmentsAssembled > 0
|
|
158
|
+
? [`- Assembled and removed ${fragmentsAssembled} changelog fragment(s) from \`.changes/unreleased/\`.`]
|
|
159
|
+
: []),
|
|
143
160
|
``,
|
|
144
161
|
`After merging, tag \`v${targetVersion}\` and push it — CI (\`publish.yml\`) publishes to npm on the tag. This PR does not tag or publish.`,
|
|
145
162
|
].join("\n");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prepare_release.js","sourceRoot":"","sources":["../../src/tools/prepare_release.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"prepare_release.js","sourceRoot":"","sources":["../../src/tools/prepare_release.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AACvG,OAAO,EAAE,GAAG,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE/C,MAAM,CAAC,MAAM,IAAI,GAAG,iBAAiB,CAAC;AAEtC,MAAM,CAAC,MAAM,WAAW,GACtB,kmBAAkmB,CAAC;AAErmB,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kEAAkE,CAAC;IAC3G,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;IAC1G,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4CAA4C,CAAC;CACzF,CAAC,CAAC;AAEH,SAAS,WAAW,CAAC,CAAS,EAAE,IAAiC;IAC/D,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;IAC3C,IAAI,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,IAAI,CAAC,CAAC;IAChE,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnE,IAAI,IAAI,KAAK,OAAO;QAAE,OAAO,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC;IAC9C,IAAI,IAAI,KAAK,OAAO;QAAE,OAAO,GAAG,GAAG,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;IACnD,OAAO,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;AACpC,CAAC;AAED,+EAA+E;AAC/E,8EAA8E;AAC9E,SAAS,cAAc,CAAC,OAAe,EAAE,MAAc,EAAE,OAAe,EAAE,KAAa,EAAE,KAAa;IACpG,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAC/C,IAAI,KAAK,GAAG,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,qBAAqB,KAAK,uBAAuB,MAAM,SAAS,KAAK,cAAc,KAAK,mDAAmD,CAAC,CAAC;IAC/J,CAAC;IACD,IAAI,GAAG,GAAG,OAAO,CAAC;IAClB,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/B,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACrC,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QACjE,IAAI,GAAG,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAC7B,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,KAAkC;IAC9D,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IACjF,MAAM,cAAc,GAAW,GAAG,CAAC,OAAO,CAAC;IAE3C,MAAM,YAAY,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAAC;IAC9E,6EAA6E;IAC7E,6EAA6E;IAC7E,MAAM,WAAW,GAAG,0BAA0B,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IACnE,MAAM,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC;IACxC,MAAM,UAAU,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;IACnD,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QACxB,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,mEAAmE,EAAE,CAAC,EAAE,CAAC;IAC7H,CAAC;IACD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QAChC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,yGAAyG,EAAE,CAAC,EAAE,CAAC;IACnK,CAAC;IAED,8BAA8B;IAC9B,IAAI,aAAqB,CAAC;IAC1B,IAAI,GAAW,CAAC;IAChB,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAClB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3C,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,oBAAoB,KAAK,CAAC,OAAO,qBAAqB,EAAE,CAAC,EAAE,CAAC;QAChH,CAAC;QACD,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC;QAC9B,GAAG,GAAG,kBAAkB,CAAC;IAC3B,CAAC;SAAM,CAAC;QACN,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACjF,aAAa,GAAG,WAAW,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;QACnD,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,OAAO,CAAC,CAAC,CAAC,YAAY,KAAK,+CAA+C,CAAC;IACxG,CAAC;IAED,MAAM,MAAM,GAAG,WAAW,aAAa,EAAE,CAAC;IAE1C,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QACrB,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAe;oBACrB,IAAI,EACF,mBAAmB;wBACnB,cAAc,cAAc,IAAI;wBAChC,cAAc,aAAa,MAAM,GAAG,KAAK;wBACzC,cAAc,MAAM,MAAM;wBAC1B,6EAA6E,aAAa,MAAM;wBAChG,CAAC,WAAW,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,WAAW,CAAC,KAAK,0CAA0C,CAAC,CAAC,CAAC,EAAE,CAAC;wBACtG,aAAa,MAAM,kDAAkD;wBACrE,sCAAsC,WAAW,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE,MAAM,UAAU,MAAM;wBAChH,wDAAwD;iBAC3D,CAAC;SACH,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,gBAAgB,EAAE,CAAC;IAC5C,MAAM,cAAc,GAAG,aAAa,EAAE,CAAC;IACvC,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,kBAAkB,GAAG,CAAC,CAAC;IAC3B,IAAI,CAAC;QACH,GAAG,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;QACzB,GAAG,CAAC,CAAC,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,UAAU,EAAE,CAAC,CAAC,CAAC;QAExD,oEAAoE;QACpE,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QAE/C,MAAM,MAAM,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAChD,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAClD,MAAM,KAAK,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC9C,MAAM,WAAW,GAAW,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;QAEvD,6EAA6E;QAC7E,6EAA6E;QAC7E,8EAA8E;QAC9E,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,WAAW,KAAK,cAAc,EAAE,CAAC;YACrD,MAAM,IAAI,KAAK,CACb,eAAe,UAAU,kBAAkB,WAAW,kCAAkC,cAAc,IAAI;gBAC1G,iDAAiD,CAClD,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAEnD,yEAAyE;QACzE,2EAA2E;QAC3E,gFAAgF;QAChF,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,EAAE,eAAe,WAAW,GAAG,EAAE,eAAe,aAAa,GAAG,EAAE,CAAC,EAAE,cAAc,CAAC,CAAC;QACzH,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,EAAE,eAAe,WAAW,GAAG,EAAE,eAAe,aAAa,GAAG,EAAE,CAAC,EAAE,mBAAmB,CAAC,CAAC;QAChI,yEAAyE;QACzE,4EAA4E;QAC5E,0EAA0E;QAC1E,MAAM,SAAS,GAAG,0BAA0B,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC1D,MAAM,KAAK,GAAG,uBAAuB,CAAC,SAAS,CAAC,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;QAE7F,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAClC,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACpC,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAEhC,kBAAkB,GAAG,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC/C,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClC,GAAG,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;QACtD,CAAC;QACD,GAAG,CAAC,CAAC,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,cAAc,CAAC,CAAC,CAAC;QAClE,GAAG,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,YAAY,aAAa,EAAE,CAAC,CAAC,CAAC;QACnD,GAAG,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;QACtC,QAAQ,GAAG,IAAI,CAAC;IAClB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,wBAAwB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;SACvH,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,IAAI,cAAc,IAAI,cAAc,KAAK,MAAM,EAAE,CAAC;YAChD,IAAI,CAAC;gBACH,GAAG,CAAC,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,IAAI,CAAC,oCAAoC,cAAc,GAAG,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YAChH,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,gCAAgC,EAAE,CAAC,EAAE,CAAC;IAC1F,CAAC;IAED,MAAM,MAAM,GAAG;QACb,cAAc,aAAa,EAAE;QAC7B,EAAE;QACF,0DAA0D,aAAa,GAAG;QAC1E,8DAA8D,aAAa,sCAAsC;QACjH,GAAG,CAAC,kBAAkB,GAAG,CAAC;YACxB,CAAC,CAAC,CAAC,2BAA2B,kBAAkB,uDAAuD,CAAC;YACxG,CAAC,CAAC,EAAE,CAAC;QACP,EAAE;QACF,yBAAyB,aAAa,qGAAqG;KAC5I,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,IAAI,EAAwC,CAAC;IAC7C,IAAI,CAAC;QACH,EAAE,GAAG,MAAM,iBAAiB,CAAC,WAAW,aAAa,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;IACvF,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,iEAAiE;QACjE,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAe;oBACrB,IAAI,EACF,oBAAoB,MAAM,uCAAuC,aAAa,uBAAuB;wBACrG,8BAA8B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM;wBACpF,oBAAoB,MAAM,aAAa,UAAU,2CAA2C,UAAU,WAAW,MAAM,OAAO;wBAC9H,2BAA2B,aAAa,2CAA2C;iBACtF,CAAC;SACH,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAe;gBACrB,IAAI,EACF,oBAAoB,aAAa,UAAU,cAAc,MAAM;oBAC/D,WAAW,MAAM,SAAS,EAAE,CAAC,QAAQ,MAAM;oBAC3C,4CAA4C,aAAa,wCAAwC;oBACjG,0CAA0C;aAC7C,CAAC;KACH,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const name = "update_project_status";
|
|
3
|
+
export declare const description: string;
|
|
4
|
+
export declare const inputSchema: z.ZodObject<{
|
|
5
|
+
issue: z.ZodNumber;
|
|
6
|
+
status: z.ZodEnum<["Backlog", "Ready", "In Progress", "Review"]>;
|
|
7
|
+
}, "strip", z.ZodTypeAny, {
|
|
8
|
+
status: "Backlog" | "Ready" | "In Progress" | "Review";
|
|
9
|
+
issue: number;
|
|
10
|
+
}, {
|
|
11
|
+
status: "Backlog" | "Ready" | "In Progress" | "Review";
|
|
12
|
+
issue: number;
|
|
13
|
+
}>;
|
|
14
|
+
export declare function handler(input: z.infer<typeof inputSchema>): Promise<{
|
|
15
|
+
content: {
|
|
16
|
+
type: "text";
|
|
17
|
+
text: string;
|
|
18
|
+
}[];
|
|
19
|
+
}>;
|
|
20
|
+
//# sourceMappingURL=update_project_status.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update_project_status.d.ts","sourceRoot":"","sources":["../../src/tools/update_project_status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,IAAI,0BAA0B,CAAC;AAE5C,eAAO,MAAM,WAAW,QAKoD,CAAC;AAI7E,eAAO,MAAM,WAAW;;;;;;;;;EAKtB,CAAC;AAIH,wBAAsB,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC;;;;;GA0B/D"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { config } from "../config.js";
|
|
3
|
+
import { getProjectItemForIssue, getProjectMetadata, setProjectFieldValue } from "../projects.js";
|
|
4
|
+
export const name = "update_project_status";
|
|
5
|
+
export const description = "Move an issue between GitHub Project board columns: Backlog, Ready, In Progress, or Review. " +
|
|
6
|
+
"Done is intentionally NOT settable here — it is owned by native GitHub board automation on PR merge / issue close. " +
|
|
7
|
+
"Drive this conversationally during the dev workflow: after create_issue places an issue on the board, offer to move " +
|
|
8
|
+
'it to "In Progress" when work starts, and to "Review" when a PR goes up. ' +
|
|
9
|
+
"Requires OKFFS_PROJECT_ENABLED and the issue to already be on the board.";
|
|
10
|
+
const STATUSES = ["Backlog", "Ready", "In Progress", "Review"];
|
|
11
|
+
export const inputSchema = z.object({
|
|
12
|
+
issue: z.number().int().positive().describe("Issue number to move"),
|
|
13
|
+
status: z
|
|
14
|
+
.enum(STATUSES)
|
|
15
|
+
.describe('Target column: "Backlog", "Ready", "In Progress", or "Review" (Done is owned by native automation)'),
|
|
16
|
+
});
|
|
17
|
+
const text = (t) => ({ content: [{ type: "text", text: t }] });
|
|
18
|
+
export async function handler(input) {
|
|
19
|
+
if (!config.projectEnabled) {
|
|
20
|
+
return text("OKFFS_PROJECT_ENABLED is not set — project status updates are disabled.");
|
|
21
|
+
}
|
|
22
|
+
const itemId = await getProjectItemForIssue(input.issue);
|
|
23
|
+
if (!itemId) {
|
|
24
|
+
return text(`Issue #${input.issue} is not on the project board. Add it first (create_issue with ` +
|
|
25
|
+
"OKFFS_PROJECT_AUTO_ADD=true, or add it to the board manually).");
|
|
26
|
+
}
|
|
27
|
+
const meta = await getProjectMetadata();
|
|
28
|
+
if (!meta.statusFieldId) {
|
|
29
|
+
return text("The board has no Status field — cannot update the column.");
|
|
30
|
+
}
|
|
31
|
+
const optionId = meta.statusOptions.get(input.status);
|
|
32
|
+
if (!optionId) {
|
|
33
|
+
const opts = [...meta.statusOptions.keys()].join(", ") || "none";
|
|
34
|
+
return text(`The board has no "${input.status}" column. Available columns: ${opts}.`);
|
|
35
|
+
}
|
|
36
|
+
await setProjectFieldValue(itemId, meta.statusFieldId, optionId);
|
|
37
|
+
return text(`Issue #${input.issue} moved to "${input.status}".`);
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=update_project_status.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update_project_status.js","sourceRoot":"","sources":["../../src/tools/update_project_status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAElG,MAAM,CAAC,MAAM,IAAI,GAAG,uBAAuB,CAAC;AAE5C,MAAM,CAAC,MAAM,WAAW,GACtB,8FAA8F;IAC9F,qHAAqH;IACrH,sHAAsH;IACtH,2EAA2E;IAC3E,0EAA0E,CAAC;AAE7E,MAAM,QAAQ,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,CAAU,CAAC;AAExE,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IACnE,MAAM,EAAE,CAAC;SACN,IAAI,CAAC,QAAQ,CAAC;SACd,QAAQ,CAAC,oGAAoG,CAAC;CAClH,CAAC,CAAC;AAEH,MAAM,IAAI,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAEhF,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,KAAkC;IAC9D,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC,yEAAyE,CAAC,CAAC;IACzF,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,sBAAsB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACzD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,IAAI,CACT,UAAU,KAAK,CAAC,KAAK,gEAAgE;YACnF,gEAAgE,CACnE,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,kBAAkB,EAAE,CAAC;IACxC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC,2DAA2D,CAAC,CAAC;IAC3E,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACtD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC;QACjE,OAAO,IAAI,CAAC,qBAAqB,KAAK,CAAC,MAAM,gCAAgC,IAAI,GAAG,CAAC,CAAC;IACxF,CAAC;IAED,MAAM,oBAAoB,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IACjE,OAAO,IAAI,CAAC,UAAU,KAAK,CAAC,KAAK,cAAc,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC;AACnE,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@neturely/okffs",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"mcpName": "io.github.neturely/okffs",
|
|
5
5
|
"description": "MCP server that connects Claude Code to GitHub — create and manage issues and branches without leaving your editor.",
|
|
6
6
|
"type": "module",
|