devlyn-cli 4.2.6 → 4.2.7
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/README.md +3 -1
- package/bin/devlyn.js +63 -25
- package/bin/skill-history.json +567 -31
- package/bin/skill-ownership.js +22 -10
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -215,7 +215,9 @@ Selected during install. Run `npx devlyn-cli` again to add more.
|
|
|
215
215
|
|
|
216
216
|
---
|
|
217
217
|
|
|
218
|
-
Installer updates preserve user work: before writing any selected target, devlyn refuses to replace or remove
|
|
218
|
+
Installer updates preserve user work: before writing any selected target, devlyn refuses to replace or remove edited skills, directories with extra files (including hidden files), links, or unknown copies. `-y` does not bypass this check. Unedited copies from every published version upgrade automatically, including committed copies, historical install-path stamps and generated Python bytecode caches. Release packaging derives the offline skill history from Git with `node scripts/update-skill-history.js`. Move conflicting folders to a backup and migrate them manually; also remove conflicting tracked paths from the Git index before rerunning.
|
|
219
|
+
|
|
220
|
+
Only `__pycache__` directories containing exclusively regular `*.pyc` files count as generated Python caches. Other entries make the directory ordinary content; links and special files are refused. Standalone `*.pyc` files count as content: none of the 113 published versions through 4.2.5 shipped them. Historical path normalization applies only to the escaped absolute assignment defaults written into Markdown by the 2.8.0–4.0.0 installers.
|
|
219
221
|
|
|
220
222
|
## Requirements
|
|
221
223
|
|
package/bin/devlyn.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
const crypto = require('crypto');
|
|
4
3
|
const fs = require('fs');
|
|
5
4
|
const path = require('path');
|
|
6
5
|
const os = require('os');
|
|
@@ -10,7 +9,7 @@ const CONFIG_SOURCE = path.join(__dirname, '..', 'config');
|
|
|
10
9
|
const OPTIONAL_SKILLS_SOURCE = path.join(__dirname, '..', 'optional-skills');
|
|
11
10
|
const PKG = require('../package.json');
|
|
12
11
|
const { updateInstructions, InstructionError, holdsDevlynDefaults, importsAgentsMd } = require('./instructions');
|
|
13
|
-
const { contentHash, fingerprint,
|
|
12
|
+
const { contentHash, fingerprint, isIgnoredEntry, trackedPaths } = require('./skill-ownership');
|
|
14
13
|
const SKILL_HISTORY = require('./skill-history.json');
|
|
15
14
|
|
|
16
15
|
// The devlyn skill bundle installed into every skill-capable agent's loader
|
|
@@ -83,16 +82,15 @@ const RETIRED_SKILL_MD_SHA256 = {
|
|
|
83
82
|
]),
|
|
84
83
|
};
|
|
85
84
|
|
|
86
|
-
// Whether `dir` is a real folder whose only file, besides
|
|
85
|
+
// Whether `dir` is a real folder whose only file, besides generated metadata, is a SKILL.md
|
|
87
86
|
// with an LF-normalized SHA-256 in `hashes`: an unedited copy devlyn-cli shipped, not something
|
|
88
87
|
// the user added to or wrote.
|
|
89
88
|
function isShippedCopy(dir, hashes) {
|
|
90
89
|
const skill = path.join(dir, 'SKILL.md');
|
|
91
90
|
return fs.lstatSync(dir, { throwIfNoEntry: false })?.isDirectory() === true
|
|
92
|
-
&& fs.readdirSync(dir).filter((name) => !
|
|
91
|
+
&& fs.readdirSync(dir).filter((name) => !isIgnoredEntry(path.join(dir, name))).length === 1
|
|
93
92
|
&& fs.lstatSync(skill, { throwIfNoEntry: false })?.isFile() === true
|
|
94
|
-
&& hashes.has(
|
|
95
|
-
.update(fs.readFileSync(skill, 'utf8').replace(/\r\n/g, '\n')).digest('hex'));
|
|
93
|
+
&& hashes.has(contentHash(skill));
|
|
96
94
|
}
|
|
97
95
|
|
|
98
96
|
// Skill roots of each target. In a project, `.agents/skills` serves Codex, omp, Pi and Grok,
|
|
@@ -639,13 +637,18 @@ function installOptionalSkillInto(target, skillName) {
|
|
|
639
637
|
}
|
|
640
638
|
}
|
|
641
639
|
|
|
642
|
-
// A 0.6.0-0.7.1 copy is one SKILL.md, the file that identifies it.
|
|
643
|
-
//
|
|
640
|
+
// A 0.6.0-0.7.1 copy is one SKILL.md, the file that identifies it. A failed swap leaves
|
|
641
|
+
// that copy for the retry; a successful refresh discards its generated metadata too.
|
|
644
642
|
function refreshPreStandardCopy(target, skillName) {
|
|
645
|
-
const
|
|
643
|
+
const dir = path.join(target, skillName);
|
|
644
|
+
const skill = path.join(dir, 'SKILL.md');
|
|
646
645
|
const staged = `${skill}.${process.pid}.tmp`;
|
|
647
646
|
try {
|
|
648
647
|
fs.copyFileSync(path.join(OPTIONAL_SKILLS_SOURCE, skillName, 'SKILL.md'), staged);
|
|
648
|
+
for (const name of fs.readdirSync(dir)) {
|
|
649
|
+
const file = path.join(dir, name);
|
|
650
|
+
if (isIgnoredEntry(file)) fs.rmSync(file, { recursive: true });
|
|
651
|
+
}
|
|
649
652
|
fs.renameSync(staged, skill);
|
|
650
653
|
} finally {
|
|
651
654
|
fs.rmSync(staged, { force: true });
|
|
@@ -711,21 +714,55 @@ function installCoreSkills(skillsDir) {
|
|
|
711
714
|
writeInstallMarker(skillsDir, [...DEVLYN_CORE_SKILLS, ...refreshed], previous);
|
|
712
715
|
}
|
|
713
716
|
|
|
714
|
-
|
|
715
|
-
|
|
717
|
+
function readProjectGitignore() {
|
|
718
|
+
const gitignorePath = path.join(projectDir(), '.gitignore');
|
|
719
|
+
const stat = fs.lstatSync(gitignorePath, { throwIfNoEntry: false });
|
|
720
|
+
// Refuse symlinks and hardlinks even when no rules need changing, before any installation write.
|
|
721
|
+
if (stat && (!stat.isFile() || stat.nlink !== 1)) {
|
|
722
|
+
throw new InstructionError(`Cannot update ${gitignorePath}: not a regular file with a single link (links are refused).`);
|
|
723
|
+
}
|
|
724
|
+
return stat ? fs.readFileSync(gitignorePath) : Buffer.alloc(0);
|
|
725
|
+
}
|
|
726
|
+
|
|
727
|
+
// Ignore runtime state; let the project's install marker travel with its skills.
|
|
728
|
+
function updateProjectGitignore(markerEntry) {
|
|
716
729
|
const gitignorePath = path.join(projectDir(), '.gitignore');
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
const
|
|
721
|
-
const
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
const
|
|
725
|
-
const
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
730
|
+
const original = readProjectGitignore();
|
|
731
|
+
const marker = Buffer.from(markerEntry);
|
|
732
|
+
const managedHeader = Buffer.from('# devlyn-cli pipeline state');
|
|
733
|
+
const runtimeRules = [Buffer.from('.devlyn/'), Buffer.from('.devlyn')];
|
|
734
|
+
const lines = [];
|
|
735
|
+
for (let start = 0; start < original.length;) {
|
|
736
|
+
const lf = original.indexOf(0x0a, start);
|
|
737
|
+
const end = lf === -1 ? original.length : lf + 1;
|
|
738
|
+
const patternEnd = lf === -1 ? end : original[lf - 1] === 0x0d ? lf - 1 : lf;
|
|
739
|
+
lines.push({ raw: original.subarray(start, end), pattern: original.subarray(start, patternEnd) });
|
|
740
|
+
start = end;
|
|
741
|
+
}
|
|
742
|
+
const kept = lines.filter(({ pattern }, index) => {
|
|
743
|
+
if (pattern.equals(marker)) return false;
|
|
744
|
+
if (!pattern.equals(managedHeader)) return true;
|
|
745
|
+
// A header owns contiguous patterns until a blank/comment; remove it only when marker removal empties that block.
|
|
746
|
+
const entries = [];
|
|
747
|
+
for (let next = index + 1; next < lines.length; next++) {
|
|
748
|
+
const entry = lines[next].pattern;
|
|
749
|
+
if (!entry.length || entry[0] === 0x23) break;
|
|
750
|
+
entries.push(entry);
|
|
751
|
+
}
|
|
752
|
+
return !entries.some((entry) => entry.equals(marker)) || entries.some((entry) => !entry.equals(marker));
|
|
753
|
+
});
|
|
754
|
+
let gitignoreContent = Buffer.concat(kept.map((line) => line.raw));
|
|
755
|
+
if (!kept.some(({ pattern }) => runtimeRules.some((rule) => pattern.equals(rule)))) {
|
|
756
|
+
const lf = original.indexOf(0x0a);
|
|
757
|
+
const eol = lf > 0 && original[lf - 1] === 0x0d ? '\r\n' : '\n';
|
|
758
|
+
const prefix = gitignoreContent.length && gitignoreContent.at(-1) !== 0x0a ? eol : '';
|
|
759
|
+
const header = kept.some(({ pattern }) => pattern.equals(managedHeader))
|
|
760
|
+
? '' : `${gitignoreContent.length ? eol : ''}${managedHeader}${eol}`;
|
|
761
|
+
gitignoreContent = Buffer.concat([gitignoreContent, Buffer.from(`${prefix}${header}.devlyn/${eol}`)]);
|
|
762
|
+
}
|
|
763
|
+
if (!gitignoreContent.equals(original)) {
|
|
764
|
+
fs.writeFileSync(gitignorePath, gitignoreContent);
|
|
765
|
+
log(' → .gitignore (updated project install rules)', 'dim');
|
|
729
766
|
}
|
|
730
767
|
}
|
|
731
768
|
|
|
@@ -756,7 +793,7 @@ function installAgentsProject(withClaude) {
|
|
|
756
793
|
+ '(npx devlyn-cli -y --claude) so the devlyn block is written once, into CLAUDE.md.');
|
|
757
794
|
}
|
|
758
795
|
installCoreSkills(skillRoots('agents', false)[0]);
|
|
759
|
-
|
|
796
|
+
updateProjectGitignore('.agents/skills/.devlyn-install.json');
|
|
760
797
|
}
|
|
761
798
|
|
|
762
799
|
// Whether Claude Code reads the devlyn defaults of AGENTS.md through an `@AGENTS.md` import in this CLAUDE.md text.
|
|
@@ -817,7 +854,7 @@ function installClaudeCore() {
|
|
|
817
854
|
}
|
|
818
855
|
}
|
|
819
856
|
installCoreSkills(skillsDir);
|
|
820
|
-
|
|
857
|
+
updateProjectGitignore('.claude/skills/.devlyn-install.json');
|
|
821
858
|
|
|
822
859
|
// One-hour foreground Bash calls and one-hour prompt caching serve a drain host that waits in the foreground.
|
|
823
860
|
let settingsChanged = false;
|
|
@@ -871,6 +908,7 @@ function install(targets, global, optionalNames = []) {
|
|
|
871
908
|
+ 'would apply to every project. Run from a project folder, or use --global for skills only.');
|
|
872
909
|
}
|
|
873
910
|
const roots = targets.flatMap((target) => skillRoots(target, global));
|
|
911
|
+
if (!global) readProjectGitignore();
|
|
874
912
|
preflightSkills(roots, optionalNames,
|
|
875
913
|
!global && targets.includes('claude') ? path.dirname(skillRoots('claude', false)[0]) : null);
|
|
876
914
|
// AGENTS.md first, whatever order the menu gave: a new CLAUDE.md holds the block only when AGENTS.md does not.
|
package/bin/skill-history.json
CHANGED
|
@@ -1,77 +1,613 @@
|
|
|
1
1
|
{
|
|
2
|
-
"source": "
|
|
2
|
+
"source": "skills: config/skills/* and optional-skills/* trees from every first-parent HEAD commit touching those paths and every local tag, derived by scripts/update-skill-history.js using bin/skill-ownership.js normalization (LF, install-path stamps, OS metadata and Python bytecode); deprecated commands: commands/ and optional-commands/*/ files of devlyn-cli 0.0.1-0.5.8 (every published version that shipped them), LF-normalized SHA-256",
|
|
3
3
|
"skills": {
|
|
4
4
|
"_shared": [
|
|
5
|
-
"
|
|
6
|
-
"
|
|
5
|
+
"015eea12cc07cfb9eb318c30855f6deacb5bf43bd508a511dffd2e48c9d82964",
|
|
6
|
+
"0544f4e90951233c6cbe99755fb5c95728d7429b8b4ce5dd6e2829dd0816524c",
|
|
7
|
+
"05935881380d65ba34a964592e4587534fcea034b43b13673eff4108ed9389fd",
|
|
8
|
+
"06ab3a4b9e1c97d9b3dcd238148d775f1165f3fc08898af2f3b76149162b78d3",
|
|
9
|
+
"082124278a538e4ea8b6622d767f996e3d818ec85d6e0d8ddddafe9bb03118b2",
|
|
10
|
+
"08b96c407cb56b0a0242b3918e1618b21eca06caf15b8a1eec00aee6b023e08e",
|
|
11
|
+
"0a60dd9b96442be24a571dd5fe6cac426bba7dd7a06ad17f3211f4f9fd9b1741",
|
|
12
|
+
"0b5c3f72d18f8eea538bfef7192b207ff5cbac25c7e0d2ce080cc725bfdaa2e2",
|
|
13
|
+
"0f397a4edd6b1b3063d27f6205dc6b3d069fa616624bccf661539b174535fc7e",
|
|
14
|
+
"110005e3c7052d35502186d907b169c9fc7c85d558ab7c7ad0ba2f0308aa7a5d",
|
|
15
|
+
"135f09d5382b4d375204bba3ff6fb3f6fdc34a1ec89fe88542da02d12dda0f0d",
|
|
16
|
+
"1504c7a41e5f4a3206288d05e66fb48847222864f7825f05633883e2c562ec77",
|
|
17
|
+
"161cb4f1b27a9f81ae1e96af6ff596399c8936578a11d601108a89cbdeea241d",
|
|
18
|
+
"196afa14871099a9afc4e484b00e8d8ccd928dba79db95a6a8776f58c8e78c39",
|
|
19
|
+
"1c1e5e44ff704b1b8791fabcad79a4158d8cd2f024569c1685ec3b185a98fbcc",
|
|
20
|
+
"20bfec10dcec9a06701827a6a39faf3495f970f659f1e941cbfb62e880a0649c",
|
|
21
|
+
"20e11efa7b27dcd30b5550ba5e0e2e07df9ac522a76445a594803a0e29b2e13d",
|
|
22
|
+
"21723943c52573124ce3c74e9090a8ae7d7c9ecdeb78fdfa52b89c45ff1b3374",
|
|
23
|
+
"247904cad29c1c3ed810f848e66f982e8765e5c627ef3a18a876fd95eed9c29c",
|
|
24
|
+
"24f73bd06d359296088e43ce2e7bf5178e3f69752b559639585563ec35fc33f5",
|
|
25
|
+
"27d4da7863ed4652187f6a101da0e56b1d3d18e4565c720d5f8150ad0a193402",
|
|
26
|
+
"2a4361bca0a9fadc4a8e5e4578c383171cd64c65296fe882990502250df44d53",
|
|
27
|
+
"2bcac1ab5995e474c7dd46705413982876384d8b4da704126a66c10770a1a4d2",
|
|
28
|
+
"2bcae17ca31adaf306d1e5d21ad0c211bbd6f57605f68168f656e078dbf524e2",
|
|
29
|
+
"326a71c447fe4d98f3460eda3fc541920b7cc2205b8288743e8622d90215a49d",
|
|
30
|
+
"34282740d421a65fc75dc95edf260aa0d0fc6b90472f7b4641cb80110df0a359",
|
|
31
|
+
"353b483942a62b79d1c5bf31e30060ef7ed9a67ae2d8b27450a53acb98e4e23c",
|
|
32
|
+
"3554398c2be144938e4837d9b60c0976f685cfc2c0dd0451cda714fd053f3c7d",
|
|
33
|
+
"35c7e6c069c847ff147f2bf4f3b67a296652c122aa91a3966457a00dd0597b78",
|
|
34
|
+
"37acccbdc76aee15311b5f47fd26c50b1652dbe7cbcbacfc37774841ab464028",
|
|
35
|
+
"393ad728eb0906ae61110fde3820c4fce015d8f94643a2877372b74a6b6eeb02",
|
|
36
|
+
"3b6193eabc83d815804533010ca7bff1f240286e7898380a5fc2adac71dcb513",
|
|
37
|
+
"3bc9236cf258d3fdf85fa91f70f1d3d0c98d32bd001af4a69955e733f9255238",
|
|
38
|
+
"3be2ec1243eb28f779b170e469dfb65555a92dc08b3d927b8973cbd49308125d",
|
|
39
|
+
"3c58989be2f943896810ef709fb115171420a918dfaadc43ea47940fa8ebc7ed",
|
|
7
40
|
"3c81c575cc43d70488865b440204cb399091405d9b7f81dbf047a32d3d5ac045",
|
|
41
|
+
"3cd398df22e666fdd2e0f253c5a7464bca62bceefe3737d28a5ef95b75cb3a33",
|
|
42
|
+
"3e39fbe29d0bd607f4ad940f4ca40f9abf82d468e418d0362fb0fd4fa6812475",
|
|
43
|
+
"3e5135877e733f1dcff3b747444228f5eece7cb047956c87a3af02a485cfaad9",
|
|
44
|
+
"3feb469793d0101c2cd939684a9fcdebd333d0532c68455f0f2df33c4b312bfc",
|
|
45
|
+
"406b982f6ca0b9f5c0faa6cb50749b52aaf23545e06174ec39f831929dc929bd",
|
|
46
|
+
"40f50f3c3c0d030d1efeb6955c0c6f32f518e737d8dd3bec6610ff02badebbdb",
|
|
47
|
+
"430d156eb8c62c7edba3d660050f90b267f928976c3a3688e95d54f00dc34747",
|
|
48
|
+
"450d578ef177a9e8f0b693940ad64b41c1d9719975ba6305f62a7c82ac3a892f",
|
|
49
|
+
"4685be6a94ad5587ce53785c14a60cccf9a852d9d23391dba0a5bcd0c64931cf",
|
|
50
|
+
"4ecb004b24a8adfe41c7416c3fa24e62cf76baa3b276ae1ce5091caef77e57b8",
|
|
51
|
+
"4fed91aed4dc1cd28a9e07229dbe9b7f6d8127e5f763dde8f76bb1b6f6855cce",
|
|
52
|
+
"514bfaf5667af3c9d4d36f391e6567a5eb759c6dfb06a5c3ea23cf29692844ef",
|
|
53
|
+
"565aa53ab153a37137661a089a8f90d55ea746136e12948e082a35e9fb8bfe52",
|
|
54
|
+
"56c2a60ab143ca59a1d961367d0acdae8f7e24c7722a3ee43659d3f9db619b58",
|
|
55
|
+
"572d4b0d94d5eb1c96b624097fc8a4cb9827eca6b34d3227a08928cff42c844b",
|
|
56
|
+
"5882958674c44409f5dc7a9bc139c2b46473c8989b84927e87b2c45a2cb964f1",
|
|
57
|
+
"58af082042ac1cec7fb60dd2b6287e714db2684edeea5f96112716464f583742",
|
|
58
|
+
"5995fcdb203a6b98c3e7cae4fe6cc7a3fb57f06a5d32069576e58350d50eab6f",
|
|
59
|
+
"59f0ecc2c1fd9620e4cac06be370e0bf9965a35c20616047445dbc42da6a1677",
|
|
60
|
+
"5be2e643f96b6ce503ae8d631c67729f0c24b6c5d2b431c087161b520ccbe417",
|
|
61
|
+
"61ec4c0435a2f0b307df8e88d81d9862c3abc1bf758648f2c18039581596659b",
|
|
62
|
+
"628ee7de57717804cb2b4f4c9357751578276f241eb3ab53fdee49ae92d57513",
|
|
63
|
+
"6320c0d8a5cb5ae82fc08c9c05c9151b00366ef759c824c16d4b777ccc30c771",
|
|
64
|
+
"640500e3ada3d81645c293ddc956e9757f0c4ba0a06e3f914c9bdad4968cbc66",
|
|
8
65
|
"6546d6b833701f2641a004802cfc17ec62442e5d0003f396cb0231b676ba9a4a",
|
|
9
|
-
"
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
"
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
"
|
|
16
|
-
"
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
"
|
|
20
|
-
"
|
|
21
|
-
"
|
|
22
|
-
"
|
|
23
|
-
"
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
"
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
"
|
|
66
|
+
"65664aafdb12ff24a44dab5f7cfbcba3cec520415901549bfc6ed0762ffb34a2",
|
|
67
|
+
"65c2facf362e2de58f27395a2801bbe31ec53b5fd0b313fda4f8b1e75f7655cf",
|
|
68
|
+
"660827ed6c68b41839f919f5ea4c7dcefb525dcdc6c12d8fbb95e7c6867a79f8",
|
|
69
|
+
"661d656ffb85421241a73a9fc0d0800dcccdeee7b54009be49ab1469f1f391cb",
|
|
70
|
+
"6801418aae194cc69778b2e9baafc86533c4199fc81384b4b62e375263ae8a1d",
|
|
71
|
+
"6882aca0920ee33af4f11d15a53d08dc0108df0070551b27a97a5c52717ca372",
|
|
72
|
+
"69a3fa5c1e7c5358cf7571936c8c09f5cc1d13999c8490ac10533af2091c4226",
|
|
73
|
+
"6a523474b70ba99aff5472020cdde9ca1e7c91f8ee65db03c9e712adfac6d31d",
|
|
74
|
+
"6d1a5458b23196b6f6fde6b7e9dc097ed173cb5914de439e512a032ca1892812",
|
|
75
|
+
"6fa2b5e089dcd00613c6e9800d2e763da9e5b2c80e6a7ef5d54d5ad7113e8399",
|
|
76
|
+
"71fb125e20420d6f3fcd3396093fcdc8d552bab9626c3cbd962351e0d19adac8",
|
|
77
|
+
"725395f70eec7e2ceae1f3aa122893433923b098a1e0d6202dd410979ef4eea0",
|
|
78
|
+
"72baab9daecfdbcafb2f9484a16c2e89fc6ffc5fc693f1a2627042f1e8197f06",
|
|
79
|
+
"73254fa6c8824b5d0bd0545332fafd1e946f4bc6d702909580abfb42db99e35f",
|
|
80
|
+
"7403aa2911ac89180c4abe2c15e4037a8023af134e2fe70ed35ae1b14c92a04c",
|
|
81
|
+
"74ad540635331051e8a32b6d7aa08c1926b9433298d1a1f699efe294b0c96d53",
|
|
82
|
+
"74d650102836e72f0ab6cec05760ced6e2e047c62c1fe403837879e91d2e1cc4",
|
|
83
|
+
"75cdbe50f909866a69cd7f7fa6ed104f471a6386e19fcf82e695c001edeafe13",
|
|
84
|
+
"7a0f6c692bd1f74759d44f1a145899c157e1787635db546ea8a192461421e353",
|
|
85
|
+
"7ca704d818bf9c044fed59fdd4107bd0463f9b0514d44729003e3e52aa796353",
|
|
86
|
+
"7e915cc7307af694e326c7f75cf831d187edd965f38d870323cd50f0f01a564b",
|
|
87
|
+
"800543bb9d1f8b90a7c077f072aa45364a0136d3c4e9b7acddcdbc30d63eb0c8",
|
|
88
|
+
"823e497e01870123d4e73c8dac7472e161b5ffa2f6181ddcba71fcb829096948",
|
|
89
|
+
"83b6d37fcacc086a09b9c3eddfff2263bfef23f8fabf8d8833a7c9f9fb6186c5",
|
|
90
|
+
"84b045f83ee58e6117ee4316499f4dcf74375942d7558d125075e995b3cc90e5",
|
|
91
|
+
"865e26f38b04dbaae6b0b91616110d6bd748909b7dec68f20cd7c2a240d2fa5a",
|
|
92
|
+
"8ab08b8f3d19e7fffc36fbc4d8c4dad83df02bcb83a9aabcb8db8b82fe12b384",
|
|
93
|
+
"8b34167328e88c73538b5ae2a30e452b544a44bc03f70a2c4f0278b33953afc4",
|
|
94
|
+
"8c80926ab03b2477e52264495b35c2116f65fc51b02e8c56e441b5705872392a",
|
|
95
|
+
"8fb73c0d2472b3643ac6e3f0ad87d818694afebaf68fcad596496e703893c43d",
|
|
96
|
+
"9162fc2fed6f4a611d299485be3a397080beb3304865ce59b95576ba7d00650e",
|
|
97
|
+
"94a14a1b87df1d7297d12949a24e47a0d6c16a8fe30495ee759fcabb2e1aa398",
|
|
98
|
+
"978e4210e49b42827c98cf6e40c868c87dc6e3533a2b779ca2fa05abfc16ad0f",
|
|
99
|
+
"9815b6e6963e068872a6dbeae24068143bf92042bb035f67bafd1a224d65bcb0",
|
|
100
|
+
"998343c148618b937556b58b83749c05d5aa3283280d751c118da6a542fb87f2",
|
|
101
|
+
"9f14ca629e41730b1a9fb5d0ad1a39cff558fe34758d6ceccbb9de498f9f384e",
|
|
102
|
+
"a11950a5880346f03257c688fd8bc6f8c29fc0b7c05c90e8f5211d5fb7665774",
|
|
103
|
+
"a405a99b988f6edd2eabb0504b36309bb4cf0c3b97eab26bb7ef257e4515dbf3",
|
|
104
|
+
"a463693773934b6de78f5326fb17acac34e8159f459b89c21aa66f3ac0874a57",
|
|
105
|
+
"a66080b0ff25f35e8574a24ee01d87de9f579a59796977f3cc59f1865063f6f6",
|
|
106
|
+
"a85c7f85bba20b95b8072242e889507b44e3bc029e082abaadaa2d9de5372428",
|
|
107
|
+
"a89381db5b1a7071c29c64d5293d1d248a2a658760ac2f2e9ecd99d3ab83bc86",
|
|
108
|
+
"a9c3acfd36a6b5c668a2b7e3de4f0408fe1ab6b83db1fb8f12e90f66709509f8",
|
|
109
|
+
"a9c5242608e8b6f660f3ae9daf3fdefb210b6e4603bddee3d26ba59a55be4085",
|
|
110
|
+
"aa0d6fad740ead835720a528f197b29e6cd0b209d3b9db1b312b9895f991b037",
|
|
111
|
+
"ac3d475156af89e2e887118e92b972dbfefde6f0a07bbbdb68ba88fce5f7904d",
|
|
112
|
+
"ac5485ee9218c7038c6d329a3877925995c5afcb2dbd16b1da4495ed769d2083",
|
|
113
|
+
"add41e1257ed525d6f225d9eb976a3978f126e604ca7c0f5aa1b223af78f1902",
|
|
114
|
+
"afb478a981c4fd91f66fbe10d04481cd4562825fd6785ba0aadc6ce3ee3da173",
|
|
115
|
+
"afd8966f25b601b4f6a915fa2c6591b7369f55e8a9ae370cdcb98caf886de707",
|
|
116
|
+
"b1fced67f40768df688e8ce34d3105dafaf6027d3e4522b77276d168bf150f32",
|
|
117
|
+
"b27e98e1872f450aa11c85d6aebd70d25cb5d45db13662b7ce57a1ab1736b348",
|
|
118
|
+
"b3ba619b28a26cb71e2d1fd45adb203cca2b0917acd44288bb1dadf300859259",
|
|
119
|
+
"b4414c6811d824ba16084bc1dda9b956d04055fd4ec4467e62d2d27f364389a0",
|
|
120
|
+
"b6b5b1952f7d2daa15af39858bb05dda9b5f55dc15c479f8fa7ca84a0ad5299e",
|
|
121
|
+
"ba64bf037553aafdfb6de721fff73f32ae6b0e6fc1fb54d857d347bf3e9b8952",
|
|
122
|
+
"bb967300f6fdee8b8461ff2a5f82acd055d969dc6cdc1040cc36a39867cad6e6",
|
|
123
|
+
"c3a37f7502b5e2d7108845907520cf6fef2ebcd70dd59d75f42cbf5bf5f21fbe",
|
|
124
|
+
"c5d2130bb864db373d36878b96dd974fee4d64b3bf3455cc722b4f6787b44c3c",
|
|
125
|
+
"c86770d97e721fa796925cbd64544955c8d6f88fbb696069bbf1cf74e5e907cb",
|
|
126
|
+
"ca5af169c57dff8d038b99376a7b984a220102c43406ccdef79c9d1eadbce6fb",
|
|
127
|
+
"cf13e851d0ee9b8f2f0bb44765b1e87eaec4c22a0f10aad8ad42c597c8fc0cf9",
|
|
128
|
+
"d023806548fe634679cee0d31639a272e6404398415c3ac72fcfa66f924d8d00",
|
|
129
|
+
"d07b60448cb133633f1e4e6be194d2c864fbc79fa85eb74ae36d0209155cc0b1",
|
|
130
|
+
"d0e1ecbb740b6e4a847b4b59a6b0370504456fcee170e34c23d65865539e03de",
|
|
131
|
+
"d201802016f06626bd9fa4074d61a54ab9f70b7febfccc0ea0c70605d1f1b811",
|
|
132
|
+
"d2273f7404df92436c4c2ebcf38bdf1e5dbc65c5d1544f95dd1332c123ef17df",
|
|
133
|
+
"d22bbe15dff66d4801320ea81d7952af50615a7ed57ffe7033545589b8d946bd",
|
|
134
|
+
"d3b40b9f0e15bf90ca557c0198a8fe5ff1d046b9aaa54b181c743d8e006f9c34",
|
|
135
|
+
"d424feceffc005f220e33a19cac73f33bd40d120cc14da33725b8a990704bcf6",
|
|
136
|
+
"d7388e36d76647a89ce52de615271928cf9fc78f980df399d2bc2e6d6675ec82",
|
|
137
|
+
"dac3da11ea5686382f5c9892a0b8e4ec25e625e5946283d8e2ad944aa84e1df2",
|
|
138
|
+
"db867d1fd98058bb20e41e942abd95f08fbaa9465928025f69f0a0308fa71514",
|
|
139
|
+
"dd0bfdfd2db0b5f9ddef75d1b9ce3247698739fc551d292366dccd506fef6a36",
|
|
140
|
+
"ddb0c8dac58e95298330ab54e4d1fe4a108c968d9af713f267b4f8f4c6808507",
|
|
141
|
+
"e0a305cf3bf47c8bc357195d4d50b0f6177069e870c33040c258c93edae68646",
|
|
142
|
+
"e115205a744fef918a59d1b3a601df09a8b6df1d3e60613b9e8b87240929f8d8",
|
|
143
|
+
"e41013abf5e17445ef83a86974ac1de77beaa61e484e1916577ecc64bb34c220",
|
|
144
|
+
"e725ec4eca42f737ee4bdaceb10c11db289414a1d4bb8be8fe103f89c89f07d5",
|
|
145
|
+
"e812d02ebdbdb8d82eb85842d676e21bedddb0d00154eed99b9d29b43cb8fc02",
|
|
146
|
+
"eb225a3ce2bfa39ddf473dff59b118a452b20fc388d64248cc67df5dfb411d32",
|
|
147
|
+
"eb3327d5e6940bd5e0459fa28c9ab323d9c58ccfdeb9426c19cd027cc4e5c4ed",
|
|
148
|
+
"ebfcaefbda2a8df64460137adf54fdac8798fced904ab484938c9174f0273aec",
|
|
149
|
+
"ec339b1382aeab37be103b9a6c1db96ec935f3b030c90ae0952c19c7c3b0431a",
|
|
150
|
+
"f08e7fed1b6ffc277d5f3b8d0e1fe6d6e8b18ee30f17baa44d0b703efca96118",
|
|
151
|
+
"f12077a8c5f5b6f08c1e220b6f4a191eca8de0daf35fd8ce060ec7a45bb700ff",
|
|
152
|
+
"f133dd1c3c40f6b4cf6879285cf282dcac436a99479717d8cb6968ad885ce0a2",
|
|
153
|
+
"f1b0f66a2079af7423e0889435dc3bc1e5e14c20e7d29d4d55a56217cdb036ee",
|
|
154
|
+
"f22d5b4ebe5f973cbbd5a1fc747c068915e0b4a5b0326754f6a750065091853c",
|
|
155
|
+
"f2bcfa0471aba81a10e3d0e6fd43bd6ec670601a4ba3a7d719e595edf9ab032a",
|
|
156
|
+
"f958bfabd2e056fea911526fba2196d2ed5a48828f576e5ce1657100b466db20",
|
|
157
|
+
"f9617e1034543f31ae2a3820301fbac6e4674e5d6fbc0d4b76751fe87b8e013e",
|
|
158
|
+
"fd68c7a74272929a14e685e447a51058ffcdd4c1d6bef83cbba18045c07aee55",
|
|
159
|
+
"fe386122e502410394ab60643e79aa736ddb5030257c863f4a198e23b56b4cef",
|
|
160
|
+
"feaa255b2b6a7b0dc79877c4eb620c0f3cac88b50d2d1407a0a8a02ebc08ed49"
|
|
30
161
|
],
|
|
31
162
|
"asset-creator": [
|
|
32
163
|
"e295f57eca534cbd4e27e236999f4f5412ebdc6944ac864761e922dea213f904"
|
|
33
164
|
],
|
|
34
165
|
"better-auth-setup": [
|
|
166
|
+
"4cdc8e524f4caa806ac6899c4259cd7dfb872d0ba2226159024938607e1ce85b",
|
|
167
|
+
"ca927c5078ef5f6ef145a8a11203bec33e57d71d130befeb5b65ad13f4138b6f",
|
|
35
168
|
"e97c39c5d669ffc1f49d57fd3a016e852727e57c3abe2f9be1ebffab9fcb19ec"
|
|
36
169
|
],
|
|
37
170
|
"cloudflare-nextjs-setup": [
|
|
38
171
|
"f147a28b9f6f62feb21df89bdf08869820f4871ede7a8ba4a242246509ee6e35"
|
|
39
172
|
],
|
|
40
173
|
"code-health-standards": [
|
|
41
|
-
"2056617b324bb7e1e3b85a6536bfe33151e31ef421656cade74258fb4e922c1b"
|
|
174
|
+
"2056617b324bb7e1e3b85a6536bfe33151e31ef421656cade74258fb4e922c1b",
|
|
175
|
+
"3de05d3ecb5ec9736add626674a142c5646a3470f2017403a1ba64a0286d5ce9",
|
|
176
|
+
"481e36637c0ee80183444bc0719aec888c64eba450d8ea0b48d38fd755866023"
|
|
42
177
|
],
|
|
43
178
|
"code-review-standards": [
|
|
44
|
-
"
|
|
179
|
+
"3b02028ba6c62d34cff4106dfec38f0f774f3e120b5289d8216221b94d72ce43",
|
|
180
|
+
"3fe0742825aff05fa6fda49d3e3e0fbf5457307af944eb90f2771cbf611edd69",
|
|
181
|
+
"4a8bed603191eeb6834a5008691bb3942e77462abd2818340b808a752ee5a224",
|
|
182
|
+
"57c2481f9ae36623f59b365eae82f22d54253f8ba0fd690949a12858b5f6e308",
|
|
183
|
+
"b352d21d2a86def2997d89ae1ffa35b0fe428781f75cfa9e1b69a3384416ec31"
|
|
184
|
+
],
|
|
185
|
+
"devlyn-auto-resolve": [
|
|
186
|
+
"0740bb91fb99953631b0c2c273f00210544576f9497af5eecfdd5fe1e58349e2",
|
|
187
|
+
"0ca656d6ffd54f88a51fcee1c64dd2060cf544344d9631cd201367dcf1798374",
|
|
188
|
+
"0e9eafb0274ebd1dbfb891234cf932439814f097b2ee0b5b38c0459f31b9e250",
|
|
189
|
+
"1b03511aecc98dcbab14814a761f58eba73df49b480c5caf2c4b2503a813cdd6",
|
|
190
|
+
"1dc8d2320580981341d64be62fe9f8d1e0e20ac432488b5f2d3531de6822b617",
|
|
191
|
+
"21aab65af6f8a0b985abf625dc7546f2d02520978fc0128cd81e2ff0f04bdda9",
|
|
192
|
+
"2662f8b1f2ccba29d471c50d989fc707e11e80a31f82fe24563ccc6890fe4a0e",
|
|
193
|
+
"272e7ec8f70e8dc7489c6a4b33b305587efb5ee82006ac2bb469073f0332404e",
|
|
194
|
+
"2fa2213cfcc119a98704614ea72d8569ed548849fde22562ac45adc92dc386c3",
|
|
195
|
+
"2fe20f3ce2a974e5b5653f7f12e40c4581662c912d069d8ca38215b7f1a61dc7",
|
|
196
|
+
"32e31fd2959971a6b0af6525e98147076beb9c390600bc8a9745a6c5c452d8a5",
|
|
197
|
+
"33a64c46367d829cf3660c6a5652167646e445df1b007032bf5f8d6636976c42",
|
|
198
|
+
"35e536027d8a251c410e2536fee4e4d2bbb8402c5653739fdcccc3d915bd544b",
|
|
199
|
+
"3a8d305415f0c2feba6445d25f1adbf3ebf94d54d52c30f9afdde9e265095de6",
|
|
200
|
+
"3b1233f5e66d9642c88956fedb3c9f9bdce52f18d56d4ebe3db3aa7cedf81d89",
|
|
201
|
+
"40310938b2a5eda66d699b5e0f59279b4ba941dd1d2fb8def98b61d5946f0ac2",
|
|
202
|
+
"4f48399c6e2b08841dfd4f1dabd1d8fc0d450c76b5b7651320fbc314dda188e3",
|
|
203
|
+
"53572bc42b03b223ef0c1217fea00114e339f8a629f5e0293cd46f4100463604",
|
|
204
|
+
"5571a978a40ab1cf5adbc00561066ad07a321a7821e51537ad177f3a2f8f47ca",
|
|
205
|
+
"578bed47c79a99949676122a92d262a10f42c186f1388ed34ca8c6d52aa6d0ee",
|
|
206
|
+
"5aaea3ae9f5e8c84a0e3ca59ffbb616e4317b55d053fb2068c75b04644d8f9d8",
|
|
207
|
+
"5b0aeccd4c70057c334a597b2eac8aec658132eedcf6b5d04ab89b5d020c6f30",
|
|
208
|
+
"657a8f5b90047ebf32d3f42627a592fd84a4aca171ff0e75b7e7982c8566802b",
|
|
209
|
+
"676136be835eb8d6acc3ef7e58cc10e0e8683dc7aa1ca2ba3e29ef1b00543ce5",
|
|
210
|
+
"6a7ec13741c4e335aa3f96c4155c3e24b30b620f8bb9ec246cf0b251285e6090",
|
|
211
|
+
"6e5344d95139c75e959e05340f9deeea303c010dbeea7bf10c27c865b79796f4",
|
|
212
|
+
"70efe263c6680576e9c9cde47c4fe5ba9704f566cd1f66c928d8231cc018e9e5",
|
|
213
|
+
"7233346367d51e190abb0940be3abd66a5cdaf615e87b7962e80d7a2780ba027",
|
|
214
|
+
"730f980ccf3e16a5bf4d54f40ed89af0902e6605e5744b5e68af6eed31ae9241",
|
|
215
|
+
"7680c6ffdea0afc897953f5ee1dacae5c2a393a0f2ad8d88dd2ef63bbeac2455",
|
|
216
|
+
"7682eaa5c201c552dbb270cf9f71083a18e08183bd4b1777a1957e3b80c9278b",
|
|
217
|
+
"783a2400fd45c609729689c5407f0d4e128bad9f3baaf0f2f78c9ab2ae70a768",
|
|
218
|
+
"7d03ba0401df41f999d33d332906c08b78ff7087ad58ea8d0e3cdaadad0cbeca",
|
|
219
|
+
"816ceb3db88e56e44a1b2021168e6c44290256fa13b7639f746ece07c930b811",
|
|
220
|
+
"818a4ac55009305466fab2d5841f87db5f59bc1ae5eedfc7db55e739794ce4e3",
|
|
221
|
+
"843fed2fbac8863ac1383f018c1510b47b1b012d16ca54a7525fc1c2daed5e5f",
|
|
222
|
+
"84c6aa074828f13d4cd1bed50793d367dac2fadf185cb446c0065aaa57274ccf",
|
|
223
|
+
"859f798948226b272aab6a862c32c72b721923f7008871b6c43a136a2987c885",
|
|
224
|
+
"86024eb8d61d502fe10663787bb7512be26f4eb4fe15dfcb8e1039ebb768dac5",
|
|
225
|
+
"8a3feb1e35a13406deee473e2b03366df375e458a5f2f586542b482a8ea8d295",
|
|
226
|
+
"8cecd8602c2f9750696d247d99cb32415bea7377d27a0618d8c15ea8580e5bc9",
|
|
227
|
+
"9b2d885f1d97f9d9ad76435be8ee98bad32f5264c3b96a2472270389e801cc59",
|
|
228
|
+
"9f980fee52abfd93ec0cb0e1aa42068560006f06dda49a25eb59384756c03644",
|
|
229
|
+
"ad5580897601b28f53d2ca6989e7a1d7b6f2acca0bb55ef02651bd919aa7596b",
|
|
230
|
+
"b19a207fc295bfe8931b16df0c3538951d3b02f9e834b976c3c9175a71ab53fc",
|
|
231
|
+
"b6ddc3ca15c3c59e8dd77c9bf868a66bf810b038aa86984371155397e6b1f8f7",
|
|
232
|
+
"c1304b5573cf45c05823369bc3bf90d93a27f9d7823f9b8a4a0598db16b4c8c8",
|
|
233
|
+
"cd5e1fb9b218b3c61c17db475f6bc9694c621ccba4d4ee65c6c4dcc8a438a6ad",
|
|
234
|
+
"cf5f81da61c37f244d6027e59d1a73be2a556acdb5a30275f655c644ac2c2e2a",
|
|
235
|
+
"d190658091f29c8145701d4bfac844fe08966d92c510aacda5feb6b62253154f",
|
|
236
|
+
"eed03933c0c89ef52a52fa6b9a65e15896995caf25225389fcbac3e811664531",
|
|
237
|
+
"f073b452a61e20845cb7985d0259184896dd383357cd6b6c0478944ac1012430",
|
|
238
|
+
"f0aeb3e9a725a9f13e598d0486c6c437814b92220f5969085ec04ccc25a3c9d3",
|
|
239
|
+
"f247b3c30816b6a02c9114fa69f8c478b5de7b37427d59f8dd89a558cb36ae6a",
|
|
240
|
+
"f47e3046c7fccd569d1c078e93ebd78b744562ea2bb334e9d9a67053b17ba0c6",
|
|
241
|
+
"f4832254ec1abd2f4e0be6a642c6d23c4cf9b931e074bb673f53ba6429ee29c4",
|
|
242
|
+
"f498d46c77b3a193d12b36b943ecf7ccec6dae7dfb6c0880421b6d4f43b6dbf2",
|
|
243
|
+
"f76c4018a889b4cc42eb527f5f2bc191b297919e0ffa4823d5c6564f9918887e",
|
|
244
|
+
"fb45a9cb28411682fe542aefc5eefd58519b0a815812246dee03c7e86e0aefdd"
|
|
245
|
+
],
|
|
246
|
+
"devlyn-browser-validate": [
|
|
247
|
+
"67545c155ca84e64cfd17a06018d99541d1970188a0c0dc028f02e8498a7f396",
|
|
248
|
+
"8015980ce9aad60b38d31d9569045ae011051095f92ff96e1400156be109d4a7",
|
|
249
|
+
"809a872198bd652fbb51ffc187e1bd41ad4c907cf82ccf68874154b3393a98b8",
|
|
250
|
+
"b094d046a0c889818d97b31655b4d1a53f8537be82c939294f47caf2f1732955",
|
|
251
|
+
"b1d74b6860d7b2b505ac5b6742cf6d440fddce02a507f71303792417ee829a38",
|
|
252
|
+
"c2a49a84afd555205765aaa0eecce5909cf17ae36010cc6d6ce958430031866a",
|
|
253
|
+
"f99d74b7b81514f6bcd837aabbd634f00ed4fc5219fcaa5420fee2e158ef4eca"
|
|
254
|
+
],
|
|
255
|
+
"devlyn-clean": [
|
|
256
|
+
"4066886622c6a7648b7a2c6b32fec231ba08172891fdfb6526a0d46296f6d5d7",
|
|
257
|
+
"5a7c26e92d7b18085f258c124904980caadae1e924cb91b38cb2ba3692176e97",
|
|
258
|
+
"e87b524a601db913d9897c842328bbe92270a503216eaa256a73e58c378f1b3b"
|
|
259
|
+
],
|
|
260
|
+
"devlyn-design-system": [
|
|
261
|
+
"5d83c9617dc994d86409aefdfb2d5efce078a2d0c085c9a21e84d606bf3b8b33",
|
|
262
|
+
"bad7c516bcb097d92c1971025d574af0dc3403b7ed8424ae99993186ae5e9435"
|
|
263
|
+
],
|
|
264
|
+
"devlyn-design-ui": [
|
|
265
|
+
"5b9ca3551616cf018256e22c64285d386870d93bdb4992ea4e6855310ebbb410",
|
|
266
|
+
"91080266232fb62b6f1d45932184f065589e12eb66f02fb6442527c6dfcd81b6",
|
|
267
|
+
"91d7472834e3c981003602f90e04d87b81415b042a6551755bdd35275afe0747",
|
|
268
|
+
"94c4271e2c4b5ff7824bba2485ffa65a98a1a64bb7a1792fc0d6a7b7cd8cf8c2",
|
|
269
|
+
"d75977f678c44bfc6eff9710e768cd7bb15ba75a539058bf4eba1ef6fb118978",
|
|
270
|
+
"e15946f45a7e5a364cf5e3a074d92c51454ff797c2c6878a17ca6461b84ce521"
|
|
271
|
+
],
|
|
272
|
+
"devlyn-discover-product": [
|
|
273
|
+
"a912a91f57a9c1baa91eba090a1dd6717ce20f42d69957c819fa8064a01253eb",
|
|
274
|
+
"d2921bd729cd0b62b2d19d09abb3890f7768eefbcf84cdd99658589d4e7a2192"
|
|
275
|
+
],
|
|
276
|
+
"devlyn-engines": [
|
|
277
|
+
"10d7cc5ce23a1e8ee89c3fac9da5ea09de571c21f06e1ec0bd5108559e43b640",
|
|
278
|
+
"18d84c99a2ca37e96504e50b9eb3047da08ecb87b82a423dcc8007a031ae1b13",
|
|
279
|
+
"3451d37f47e6e707cff92baa12d04b43aee94301456b8e280c09332e598a1c2c",
|
|
280
|
+
"4469daf94371ba7f34ee0af47c1eba6f318316e0ddebde47551b0495dfcf7ff2",
|
|
281
|
+
"519c272250b908bdb9164b198f1adc0b5098f08c6c3819118b30cc292eac5f85",
|
|
282
|
+
"59b030f1fed8361d47370ca9e7e6af2d0a264737eb76837589b674809134c23c",
|
|
283
|
+
"89f0efaa2efdfddc887b494138247980d97856f6cabe6a8dcc585b3a28e5fa88",
|
|
284
|
+
"9bc8113592de34a7d559d8a5db6253e472357e947010ea2304701f1f7de3643d",
|
|
285
|
+
"ee723ff072721cae3f5e130d72515d44414337cffadb9615902b0d578912bda2",
|
|
286
|
+
"fed622aa1bcf9a3b437d42c39f6b35403c8cde657be0685b93bbe864e82ca8c4"
|
|
287
|
+
],
|
|
288
|
+
"devlyn-evaluate": [
|
|
289
|
+
"4d0149b7006b588cf9e7f68c19502ac2ef9b6c544a08d2857758abf95d43efae",
|
|
290
|
+
"5ac0f9d0af5bce26e727de0fa7a8a7c6a9ab822bfcbd049633b91acfab810066",
|
|
291
|
+
"b1ef3a040a29ba0b40b479289a31ec6d3f81f546ee7723f90f2a74244bb27d20",
|
|
292
|
+
"b4aec3f1b538839c780ab5846b1e4f2aa64adedefdc2d957b8e6cd96228dfa53",
|
|
293
|
+
"cd28806ec5d37e08a21cd4a19c786cedb199c20cfe314ca6290fa701dce58b13",
|
|
294
|
+
"f0b27178427d4aeecd62572065685cf3d6640b8041760871053fc1ebb77cc5d4"
|
|
295
|
+
],
|
|
296
|
+
"devlyn-feature-spec": [
|
|
297
|
+
"85230dce315b6336e6928b9f37bff4fcd6a8b0e71b292b2ba972585738176e24",
|
|
298
|
+
"e8b480bac8b995441de0b9cfc1f7e9d9503c4ca317f10eaebae03e17d14f6814"
|
|
299
|
+
],
|
|
300
|
+
"devlyn-ideate": [
|
|
301
|
+
"0098d266ee9d7c79c0c0a0c30474e9bf13fa0c76911668b79206985136c94f80",
|
|
302
|
+
"0122885c08069474ca4a0a5825f885364a62938885f0e501c09242d176c34b08",
|
|
303
|
+
"05e824f63a6381e02042afb1df0f1437584e25a80de8e9db0bd9456aaeb7aab8",
|
|
304
|
+
"0cef055580e00f9ed439eacb2dff9d238bb11619457472016095a8915162fa4b",
|
|
305
|
+
"0dc69c20434966015176d83baa6f95b3421f9e13d0b1bd608a22f0560eae1049",
|
|
306
|
+
"0fe9b270d670f70da9d2535969b6117684b7c1517806b3029ebaf9624da8006c",
|
|
307
|
+
"1582c202d361af927c2d0843d4bcb72ccc98a0a2a9d8344d118d680f70f7e1e4",
|
|
308
|
+
"1d8c3bd31c8b755acd0c3c9f416acb5024dfa99fbf5e2c14d8d6df00a24fe9b4",
|
|
309
|
+
"300d1af60cc53285935dc4b5b370e157707218d844a4303b96d7826eef36ed43",
|
|
310
|
+
"302b1a6c109087dce02ed6af184d6aeeca6cecfd40ebe638beecf8bdf21cf59c",
|
|
311
|
+
"33cf196ba7dd2d96df119707d874317e6005f1323fc2cae677c53e2f134f9ff4",
|
|
312
|
+
"36b58dbdc26e51abc05a60872c4582faeebd67e9fe5626a3933467ba07c68dc4",
|
|
313
|
+
"40237cd5259dbcf7c490f130e844a9e32eea48a8edabd50800edee5029bf95a4",
|
|
314
|
+
"5536f8391ec4442f1b793dba8dd5d7820d45f4b6dadf1111cbac9d54469a01ca",
|
|
315
|
+
"5824f07e455fe1c3942bf595a12e935258d4c0a851ca1bf741db915603d1c4e0",
|
|
316
|
+
"5954e371659ae1010757f0eec4b80dd65a899f9fcf76d4d84d9a75476a963218",
|
|
317
|
+
"65770e3f20c3a3afd2822e9acdcfc80b827f84a7737010b79332da70d431b05d",
|
|
318
|
+
"65c781764633b912e5947362eba0837c8027461a904975401d79ad4fe8714084",
|
|
319
|
+
"6c3e2e4b84b0b4f81aed3759704da7c14f3cbabf3beeb0d1654feda3a15a8675",
|
|
320
|
+
"6d9df58c117165e9d297aa6be0df8d076bac1ed49dc29ae93906af1969798ab1",
|
|
321
|
+
"6e7228610628fc4bca31dc0b0aaf5eb4445e1f123f2c54bd13921c5cd01129fe",
|
|
322
|
+
"75cecbce4d1f4adbba608cef498ae7e421ea75512c6bf9282b66cd94d821f672",
|
|
323
|
+
"7f451e48e391643b34f6249244bc47d93d6303875e7b092771e3af0718343bc1",
|
|
324
|
+
"7fb3ceaf835230e1a75e510b046f4fe26e79815760354bec1949fa55515c6316",
|
|
325
|
+
"83e9de10d3c439af17dc4d7a603109d35136c5c8bd468ab2be962e1fad064c3c",
|
|
326
|
+
"8ff5148cc65b4608c35b29afd6fef20d42d8da93a094144d98cfc63e74089b6e",
|
|
327
|
+
"9a0363c6a03be7aca19b8dafe33907c94aa7d1b9263216232a51c35dd596e5a8",
|
|
328
|
+
"9d62f726c5ac7ed8b3989c6ab3705b5c9e4b44bb70eeece0d43bd76142b9b75b",
|
|
329
|
+
"a12b24d2a70917b5d4e698af5478b6cce4d09ddf021f63ab7129402867433a72",
|
|
330
|
+
"a3b852c30898b572021b32721638f67d9f44cae98653da3362456a7b88208de7",
|
|
331
|
+
"a7d7d65fd5f672cb404e6069fdc42ad7077deaa80ed8500cfa8b382dab2e3e29",
|
|
332
|
+
"aba66b674683935e4c28c93333896dc116ffe67e7a35fe30b3599a8be507e94e",
|
|
333
|
+
"c1b8e3ebf38e2be8972aa003e9614a782cb4f195c69d20b95a475ebf9aaaab9e",
|
|
334
|
+
"ce282a55328c2d071cacc377670fbebea4da4b9a7fee81b25293fb26763f17c9",
|
|
335
|
+
"cf61a917a804503ef1e26fbb1cf498181e843a0758ec001f84edb7bcac837448",
|
|
336
|
+
"d6433bf0f96dd9dd485c3623885255738654674b3e23cfcc1a2cfd24f3cda96e",
|
|
337
|
+
"db8d921aabf0d04811b55465a3757c62c4b39631aebaf6eecc994ca241cfbe56",
|
|
338
|
+
"e25da746dc37b2e82c658a28d9481fd69741151045683eee2119582ddaf731cd",
|
|
339
|
+
"e929f76c15349f1b9bc1e84e0a3e9e48e916168d79270e0f4a36ea8eab9b5388",
|
|
340
|
+
"f2243cc4150e225961825f6097b0cf38166c291dcf58127516ceee841f7ed4c8",
|
|
341
|
+
"fa536198d539a3c85f54dda74d0d78716ac6e6849e733bdadecc8605511eac37",
|
|
342
|
+
"fffa5a47a414c9eae607aeacb6f1a35c5dd5a7f9d1f8532cccf275c79b80775c"
|
|
343
|
+
],
|
|
344
|
+
"devlyn-implement-ui": [
|
|
345
|
+
"2d0b64db1e35182072e30a1f98d8037a407c5a0b7f028aefb45a10253318f793",
|
|
346
|
+
"3a9b45c631d6988cf18c8f153e0d36f69920ef1aa0ac35ebe8ebcc1382339ee7",
|
|
347
|
+
"f703cf5efd99b27ab048eeb9b94cda2840a161399d8d0c90d3a549af559d711f"
|
|
348
|
+
],
|
|
349
|
+
"devlyn-intent": [
|
|
350
|
+
"9ea7429c04f897b94468bc5d2219c8779b0cc8d188ee4a8a541d633e303f0516"
|
|
45
351
|
],
|
|
46
352
|
"devlyn-pencil-pull": [
|
|
47
|
-
"65af00f88b0837ffd377ebf363da73c766ae0ae8e20716fe18f80edfa91bd6da"
|
|
353
|
+
"65af00f88b0837ffd377ebf363da73c766ae0ae8e20716fe18f80edfa91bd6da",
|
|
354
|
+
"b2a8d3ff0195c32e626cd47a7d3fc581f717991bf58c1b3f172f8f80b6090214",
|
|
355
|
+
"eac5eace072c22da20b71325024edda05f5c63aa259772bc79d506af9ac4147e"
|
|
48
356
|
],
|
|
49
357
|
"devlyn-pencil-push": [
|
|
358
|
+
"27a1757e2e1bb48ff67d69a3308c10bc2006e474dad3ee8ba743f06bbf43ca59",
|
|
359
|
+
"451b04051c3793955e565dad01fbc6405b1930fc71ebcd716d13345b49cf43ac",
|
|
50
360
|
"76955458ced72f4b0bdaf71482be6097c4c86876934b6e6a2ac7d19f850662ad"
|
|
51
361
|
],
|
|
362
|
+
"devlyn-preflight": [
|
|
363
|
+
"22233aeae7f89c4b5a23763bb996b49419e08122528387bd24cd3fcc464d9982",
|
|
364
|
+
"3c7c7dfab1ed3d2ef4878b03d1086e8789503295273f083ece18e4819e725d2f",
|
|
365
|
+
"3f6c9fa223cfff14ab91bcdb050c1112533bf8bd34b2484e9e2baaba5831d19b",
|
|
366
|
+
"475a8068d24e56f2cc41e08109eda28316e0f7c99284f36012286a3090966ca4",
|
|
367
|
+
"4a2ce421eb0d0f71945289828318a41a111f75eb4fa61ed59b62f23e6c2eab4a",
|
|
368
|
+
"5c172fa2ff43f0d8a676490f864fc3b8347c01eeb7ad479d4ee26dd92934e660",
|
|
369
|
+
"621f4c295793871994c7aa7322f1f9f06aadbef18ab5b600ae6a6498f06ec11b",
|
|
370
|
+
"69383f25218f6fc592d8202dd09fc2e425db6e6d0ae88c57e5c3cd14faf26918",
|
|
371
|
+
"8ad0dcd8b11a7d11b363cfec9b93b703b591d88750c835c438173fc5fe03d439",
|
|
372
|
+
"8fa8db1b09370cb39eab1e999d464087b9d6614c8125121c12907c843ab92454",
|
|
373
|
+
"97a65e3463ae8217f48e88aa3d172fb5845640c3f93ee35548fde157b180fec2",
|
|
374
|
+
"9f36c2f08160e774a3cd6fad9e7d715331eecfe2c755edca0346729467b15c1d",
|
|
375
|
+
"b4f6e05ee2042d4f02b0c9c41764e781243ac337996f77f23bf22783d2aabaac",
|
|
376
|
+
"cb527d39a8b260a36b2fba7ebe904b4c5acbe63e84859e74c89fd3c41668f81e",
|
|
377
|
+
"f292be6b6c74491810c485ce00a8f05b4728d97667bfc220327011873ff3fcdf"
|
|
378
|
+
],
|
|
379
|
+
"devlyn-product-spec": [
|
|
380
|
+
"5e609db2d0b25a1c2bb9e64280d8e989a510ffa3c13cc143f2fe40c3ceb95b27",
|
|
381
|
+
"bd50c281381a9cf82b8557a627b1a71edc0998322546b94348c3914ee3a9a88f"
|
|
382
|
+
],
|
|
383
|
+
"devlyn-queue": [
|
|
384
|
+
"1242612c1d223a2e1fc530264a04cf81d9798e060b295d68d6ced3e7ef194567",
|
|
385
|
+
"203fc2ae062b3679b7fefaf34b21da55cf7367e91b5d260b808f9e0e152e520f",
|
|
386
|
+
"2f1146f31cb40f2bdd907ea45c6b1c38531118bd8eecd15d4f0d9dbfccde52ed",
|
|
387
|
+
"48a0320262fac2ce77673c80c9eb93e66b5587bf095208234c239dd65c817578",
|
|
388
|
+
"49adb3b8aac1e7c303fe27b1288c7025be8190fc1d977b74ff14b533ff5dfe23",
|
|
389
|
+
"4c7d988dcd154c7bf658d2d24cd7868955df9d854ed87eb784742d6d4bb229e0",
|
|
390
|
+
"a52c0c2d286e74b9f77e42d8f505966c07c2b9c8a5dabd365f5dd62fb641f869",
|
|
391
|
+
"b33f5ccace0783d86bc1e80172783507ed37450e9cc9d52cb5aff7c0b5ec9710",
|
|
392
|
+
"ceae023b0086769168d4852a7bce91beecc30d71c20473c4277dbd06ff55da95",
|
|
393
|
+
"ebcc6c9ae3d2aae56f032e9e3955326f5eb85980af3fb65429517261826f6d60"
|
|
394
|
+
],
|
|
52
395
|
"devlyn-reap": [
|
|
53
|
-
"
|
|
396
|
+
"144b9a7ebf9e73a6aac637475e3fb872a9f73b559a15f79be846540cbbfc72dc",
|
|
397
|
+
"2acced1a5f198a2c2436cfb4e956443b680462790725a646c753fec52fb86110",
|
|
398
|
+
"60fb8b62ec932f5bbb903890197e2f0f9685251505ed080dc6de7aa14c3bfaf9",
|
|
399
|
+
"77e029ab06c37fb7135a9bd4395ff84b84ab2e44cf79c5827798777e39472351",
|
|
400
|
+
"f143265739e468a60211ed4a63eb3a10fb53951d1a42b8fad2182627ffe49116"
|
|
401
|
+
],
|
|
402
|
+
"devlyn-recommend-features": [
|
|
403
|
+
"c94d0083e1f6ded1f7f812a915a67c8e0e5847a13ef1993a0fc0ece5dcc2815c",
|
|
404
|
+
"d6fce1f3f196d077c501c339ce3ed17a80b194ff5c4e54f8de9f9c00f2e4dc8f"
|
|
405
|
+
],
|
|
406
|
+
"devlyn-resolve": [
|
|
407
|
+
"01702d31a7d5ead532698b3a5a7eff145507ec1728a0fc50295a46fb7b3b5d36",
|
|
408
|
+
"03d40787663dd99c3d1999d25320cec461dc8bce4135bacdf81a4deb99e0e4ca",
|
|
409
|
+
"09f101a0900ce3edfb4b7904e8dee61aef4ba22586c51fa2675d2c0884bf6a91",
|
|
410
|
+
"0d11167e5d6d0b0b34b1f717049a0576eaf5a4a3da9cf7a9ca9bd0c75ef75134",
|
|
411
|
+
"110aa4fbcc1fbffc5eef5ffc0dfe4b4b782d133f405da4f8b68a853416ca426c",
|
|
412
|
+
"15b30c632352d00e9abe060c91c2c852ccc820cadfd2e829484aae2cf77baa94",
|
|
413
|
+
"160fc3ddc61df74173ea31084b3d2d20f5d9e52c46714ed67afb44955a3da7ec",
|
|
414
|
+
"16dc1b68874d65530ee8f959a1f8244a30ff56969659d2ed1e3b02c7e186580b",
|
|
415
|
+
"1a7205a026d1b6b3830aa7e1bc9f8549c108cd136206b967c25e9fabaaf6daea",
|
|
416
|
+
"1edf4bec83bebf65a3cfa82d9c5b8d9d7e1793d4d6ac4f40aae62fb1b4b732ea",
|
|
417
|
+
"20b13a6e8d3c43e2d89dbc4c44f9f7b10e2466c6081c0c78a59bf8d1cb8ebaa5",
|
|
418
|
+
"211c32706fbf7f12ba162be62270e3a4a4a1646cec7d72bcb958c62ccf2326c0",
|
|
419
|
+
"23809d13f09d95093f360bfd7d699e191a4914ec23e17d705882cb4555c06328",
|
|
420
|
+
"25bf863cde2f8d01f8229d6722bdc7086610c522c8a89c82216b5292bb992a4c",
|
|
421
|
+
"27059d51a1f47c28eb30577379d443c470e19591191b091b383d477a39103ab4",
|
|
422
|
+
"284815f7863dbf502d30630d1027d89754d56713180a44790d65dd2ff8f5efe0",
|
|
423
|
+
"2abd303851f085da07f6b55ee1724842ef7f8e8ad6b68c6339df5f1eaa8c69de",
|
|
424
|
+
"30877650a2403ea7cb129ae92cdc120e50f32b498fff47b642b77ffd32d32a24",
|
|
425
|
+
"3298e41ee71e89bdc00cebca279c02ff8e12545f0b1e88c367087d235a5d39c4",
|
|
426
|
+
"33270cc6ab78351d513b9cf32fc462d764b61c6c4bdb4c20522323469e5237f7",
|
|
427
|
+
"348d98a8ff2d7c0880d4833d5e4f2eda15c22b0c9a38028905e1b05f24f3ffc8",
|
|
428
|
+
"36e3bc1d0ac8b0fdfa8bfbcddac76ec3ff66f8722def4b8bf88ff9ebdd53f442",
|
|
429
|
+
"370eeb6c9295e7d8505e78c0e80f0061aa44d07676086bbe7b99572e461b1760",
|
|
430
|
+
"372c8f673c962153e6022702c0a039a933baf23dbdcb1b81d4b22d834d37f4cd",
|
|
431
|
+
"384b24fe08291b498c41a20d7baaf9d57bec06402af11f818e280356b65cfab4",
|
|
432
|
+
"3fd556ebb5ef40abc3d51f91f648fc9f050d8d4ea010af8732a4d27875c7d4c9",
|
|
433
|
+
"400e486a28b5921e2b5db29a6e68b2c3c275ee204e1ff2d808afe91dd5cc8894",
|
|
434
|
+
"401fd3820214e38a9efcbd0a683128a4a266e0ffdd23006e9abcdb3d97e8ab79",
|
|
435
|
+
"4e8a4da4c25100b3dbd938e21fe006fdb3144c6c25d35f2f89bb50c889950632",
|
|
436
|
+
"52d809ca192ef52955fd1e7931c3dda75301cd0a40abd9a4f4e33cd5e9b13a57",
|
|
437
|
+
"54201b9c695fbbf29f76866e2679729978ca5169b42a601156793c20452cae61",
|
|
438
|
+
"5692babc471959cc541ef5aedaad76693bcbfb98f0da60a0b6660923dba6818b",
|
|
439
|
+
"5d027085a8f970a2a3688d4155ef539fbe91a8dc31e4c922a95af956275b4945",
|
|
440
|
+
"5f05ca509a8b547908f82a7620b93a38ba1fac165ee068bd49bb45f6840840bb",
|
|
441
|
+
"60d8ad24ef88f521de80abad066e8d39b8eba97684436d13192f4e67cbea112f",
|
|
442
|
+
"62b656b6e444b4108326099de7693eea19e2524168d6060e8fd2f6cbca74f699",
|
|
443
|
+
"63ffe59f616225721db4b0ce01dc98fe1158c88a016fdca5877fe9d08ed6c28b",
|
|
444
|
+
"66566540c47d592259b82c6514cd4e59d1f7abf09b3174a9a793ee2cb958d5b1",
|
|
445
|
+
"689d275f39790ec981d6fbd0486fbeef253777e5817cf71e7a81ba13d5224024",
|
|
446
|
+
"68f8ca1dab6bcb38092c9be61b20697ee2dd523fbd6e47ade78e6214406b3520",
|
|
447
|
+
"6c2cd056d4938fa9c65305ae41a5544094854e1a57774a8e156b3dd9429337cc",
|
|
448
|
+
"70137f2168b0bdd0d1d1ffe067872c8fe7c85774ce5a78d1a925f9a04020d61f",
|
|
449
|
+
"70b0a515ec8aa1d5488381430c45446f481cfe27ab3f743e6175ac4ae3a81943",
|
|
450
|
+
"735064a655d56cc7f5b30b00ec67fea6ac1122c8915c7ff3326a33c76c6df5e3",
|
|
451
|
+
"752717d1686a4ceba54a041e7a691500a74d5836d5cc8936a87da042bbbadb10",
|
|
452
|
+
"7a3ffdc06f55574ebef129c96b685fdffb6a1826d3549cde98fa584a84ada821",
|
|
453
|
+
"7c0cda80c98bd7c44ea480078b979eba6f01dade24b7e670480b6369304ff8f1",
|
|
454
|
+
"7dc780ceb4d6c457216dcc3b88a19b931f95cd4b5923e1151d6b819e0627cdce",
|
|
455
|
+
"801d3122663a340e1b2206d59c4ecf381d7a52685e0e7701027143b0ffaa6ee0",
|
|
456
|
+
"82ab2a86b71324bd5f84022d42d0ff95c14b2816a256eee164f22e8605983d9f",
|
|
457
|
+
"82bb737462606f840cc91f264327d3333bb2b605878a903da9487eed52b71450",
|
|
458
|
+
"833500869b08f100a4fe862039202a6d8486b93d8b3f30ddd1bcfe71fedcd7d1",
|
|
459
|
+
"84058c047ae3b3600a838fcab03828220968024fb9c8246baf17a2d2bfe440f9",
|
|
460
|
+
"84705a6affb8e81c8222a01e17eac82d42131045125a0e93e86c70cec7b194a0",
|
|
461
|
+
"84b134617782b8223c561ea7f1c577fa6a0ac1c2bcb37ada71ca350e28909e16",
|
|
462
|
+
"84f68d5096bf18ea3f3b97d41f23ba3b7cb5888198d61932cd3a10ad21bfdf80",
|
|
463
|
+
"87fad5c5f4267c1e72558035b33cf1f203167d0780f613b18175d49ea3dfb992",
|
|
464
|
+
"8b6cad6c0651eebbaf6c454362c7c7611ce3b69e380bd2bc1616a6441f6875a1",
|
|
465
|
+
"8cd08568d6a2283710b32dee789076b77d5f01a7d6fac373d9735d97308a74b1",
|
|
466
|
+
"9030fb808648dc70baa4717138fa22f24120d578b54c0c1c7b904af6158272ab",
|
|
467
|
+
"925ce0a3e71cbebef781874bfab22ae43ab0e4665096c23630999c2c12eebce7",
|
|
468
|
+
"925e801d9952f8f0add1b9e858e1e4a2786881535bb05da861ba659f26f237b2",
|
|
469
|
+
"93f7586931f55f4a0d8aad66c13bce6575fe2af0500d159e33994e999cddb4e6",
|
|
470
|
+
"942bc01ae0ed87244c152df184c44e19f265c9ed83db2199fca8c82a37fa8985",
|
|
471
|
+
"95b1d1d8b57cbfefbc5c0df32bf29f1c4b60dd02f75aab29b012cbfcc10f6467",
|
|
472
|
+
"972f68cf68bd6f525ee1f534cc959f346e2dc457ed6e8eebcd41d91b12b2eb17",
|
|
473
|
+
"973ddb7d1732c15dfecb9bb2b56fe60d61474be20d8e878ee69e1da05b161385",
|
|
474
|
+
"9758e41ec4a0ecd5fab02f010593f0e338a2cf4dfd299c0478f3d43527e7b705",
|
|
475
|
+
"991d22a37b5d139cc6b958cb057a010844713e879841f33dfca26d676ed0e929",
|
|
476
|
+
"9a49f2c92ce500ab9c0c52fd425ab5f3697151ceef88031e49c80759baabb0a3",
|
|
477
|
+
"9addcefbef639a101c59eb498ee544cff862af44b205b473c2333dc7ccf3cb7e",
|
|
478
|
+
"9c31ab93f926724f89fe36c1ec3f001166d483f72cbddd3d14b5e3152139295d",
|
|
479
|
+
"9e59517b8719bb6e8a715379a2439e72813e6e2b74aeea04b73bad09db6771c9",
|
|
480
|
+
"9fb4bc1d509d29a47a65c5aaf6de1cca6e036033f3b2cef2251ccb45a74116ca",
|
|
481
|
+
"a69b07abeb6b11edc7b028f30050b388e09923186690cfe6acb4e5f55f0a6ed7",
|
|
482
|
+
"a7278fbd93901be4ed7f51e8344341d1d9a412a6c5bd506e5bc5bfc9243bd352",
|
|
483
|
+
"a74485c7ec466ce52214bf030ee3f90c1f241214437b91a08401a7fc30d45a8f",
|
|
484
|
+
"a8b6776667014a8d4de19c6e41d5a17a66ca9090d9d9dc5941f67864f5b27713",
|
|
485
|
+
"ad1debd17843e0b07214b2800040acbbe19a6db3e0171fa330037073cf84037f",
|
|
486
|
+
"af243ffccd5355a32e7d3ee02395b541f1ba3d2264fdb4dc1bc1266ba0a87022",
|
|
487
|
+
"b3f01b86baaa4b90edc64da8257ae962f0348f8ed206b9b9609bc03c95f37a97",
|
|
488
|
+
"b5bc547941a67939891ff10e6de445a51db15a96baabe607d7f09aaa14f942e4",
|
|
489
|
+
"b8a88cf53c85f0837254dc69c60305d9d18e74da840ecf1ea94a912c49ebd8af",
|
|
490
|
+
"bd96fd79e809f5af31eba882a0884519bb5f36f2a0bf68a1a8a9e51882d98e14",
|
|
491
|
+
"be802f043ab3a89ac63c2cfb4b978f8567be7372f4afc2400e5d71fa1f6a38ff",
|
|
492
|
+
"bf56c2e9ac13b96770c02c1c7dcc27efe15805d5c02f86a0c58c2b162a3dda08",
|
|
493
|
+
"c125c8d084d4d9a904cbfb23575ab918dad74199b05d1b18e1e0ec7eccb42ac4",
|
|
494
|
+
"c24cc985f520ff9519cc0b911fa79b889bbb1d23d03ee0a873bd5298eab1e829",
|
|
495
|
+
"c26894b25824f18670451642f17549da5c67df7c0004ce7337e75d7df6c16fc0",
|
|
496
|
+
"c39efc98f2fceec9697e6980c1cb91adf21c5e2537c264c17aff12be4a0aa47c",
|
|
497
|
+
"c52176b119aec9acfd206ca42c5b8cbc11ae6e485801ff36dc2a946e0cf5da37",
|
|
498
|
+
"c57be040e3ad9d1784825c6866870f950056e53d86109c2bc7ce86bf41b496d2",
|
|
499
|
+
"c5d4b8122e33b20e22f37f6abc33d56e7653c502f14fb2c07fbbe5a2a56e2d13",
|
|
500
|
+
"ca42a46adf012ef258a0efb6f66b467cf7e0c191cc65f0f19f48574406e9b1c9",
|
|
501
|
+
"cb0cb013cc353aef6579d9c6d84e6c67060c28734665354c0a5a03617ae9285f",
|
|
502
|
+
"cb2cc49d0c4f8b7e1f42e29a0a2f228e35612dd9278832d18f5e60c704553875",
|
|
503
|
+
"cd4b6831710d7022c9db0d941a7a3a01b5f0092efbc864f6a74b58767a20ea47",
|
|
504
|
+
"cdccb2927897ebe30cb395ad31db015740acbbb9d607395efedd35ee34d30fdd",
|
|
505
|
+
"d037c7deb835b8ef4e3642bcd30beebcccc8d1a8b3d61b9a0694026127ce9665",
|
|
506
|
+
"d0772b6818f51e85a40d37ff981a2604f5d611118f20c3ed56b5b406e2d211d3",
|
|
507
|
+
"d0d982ca1c33abc325c250eb86623e8be292e42df73fa60eb197705cf7df005c",
|
|
508
|
+
"d2f54df82c7948a199e97ef08c5037f9ac3151c10a7348f7dc54c08760ddfd83",
|
|
509
|
+
"d7651cda916794f3d2b0516f60836d003616fe4c10305063bb10a6f985f2f9dc",
|
|
510
|
+
"d8dd2d8629123c0e80c3984b543b83e2b7cc98f1928b937cce2e183999c85eea",
|
|
511
|
+
"db0eca6c16b79f7039499ebf27dcd17cc3b159bbd7d0929f0329faaeacbb21ee",
|
|
512
|
+
"e07dd38be667bcfcf54c5916ab5857a8bd59062b1b49c17f9d4a1821f3a04e3f",
|
|
513
|
+
"ea6483ccf1535207bacf629a5f982aaf92daf1ccded1eeac103a8cc63f2a156f",
|
|
514
|
+
"eda8910d82aa074e91c9a5488320881d4d4c19b17b5650c282118bd16421c703",
|
|
515
|
+
"f09835f247165972f904a3ef2b7d176f10bf24f8f31538439dc78d7c3025c1e9",
|
|
516
|
+
"f4a830aca103e81efbc158fd698a832be28793b7540f802ccd7b2e086c0f3cf3",
|
|
517
|
+
"fd35dbb475048cdf16bd4cc4f5da8e5ba1d9dacd314627244c20c1a26dc5c6ad",
|
|
518
|
+
"fd367cc71a7c2fb66464091fc98b304eeb685fbb6e16b5ac55999de249f642a2"
|
|
519
|
+
],
|
|
520
|
+
"devlyn-review": [
|
|
521
|
+
"1dc259e54bf71d9044f42b29e1a780df15bba9c8e30f08bfb18ef1fcf30ecc2e",
|
|
522
|
+
"5972f4cb670d8636e6934a920d19edb7bc9a557c348878230be0747c6feb7504",
|
|
523
|
+
"a11c2b961df10f8e974bcad005e34370896bdbd88cfca5c88e28dd80f2ada30f"
|
|
524
|
+
],
|
|
525
|
+
"devlyn-team-design-ui": [
|
|
526
|
+
"53ac4c619aac1ca195b82d43f03399d4883d318a749cdc8618bb1d7eed0fc3b4",
|
|
527
|
+
"791a231ba0dce17ec626ebaf7384dee06d26954a0fb9b7b750880da2c1742315",
|
|
528
|
+
"839cb03838f56414ab3a6c20d03556237e8e1bfa71d9a7292f4469b4bf2a21d6"
|
|
529
|
+
],
|
|
530
|
+
"devlyn-team-resolve": [
|
|
531
|
+
"1fd77e99787fc1f89c84c119b4192c01e46f80fdc9c343dcf8c3d44ef8beac5e",
|
|
532
|
+
"27c758e1c3bb9b4eed0da6ec07754b9baf16d5dff9e0745ab6bb1b63e4fe795a",
|
|
533
|
+
"3061527c5bb2c480f670ad0562cbaf06c1cc3c32703f1c2819b30fbd54f6b961",
|
|
534
|
+
"3d1af5cc99fbf257c35097dd981691cc767bda0ccbc934abf4f0bcfe861ad69a",
|
|
535
|
+
"8c2fca45205856a5fd78400ba1b418c64821dc83de4034357d6940eee5906c81",
|
|
536
|
+
"a7534b57054afa56b627361dd25462e2122e0767610d2a69d4b52c9487db5699",
|
|
537
|
+
"c0d0439a4c7cc9da982a75ccf0024c7a2f3103bdbadedc985d291696eec6bf37",
|
|
538
|
+
"e60e1376b90bbc39898b47f6732a64d6d7cd6547127746a8a312ae54c25b79f4",
|
|
539
|
+
"fa76b9a5f1d608d434753b522c81fbe7ab2665d066ef28ba262a6b466e0fcb82"
|
|
540
|
+
],
|
|
541
|
+
"devlyn-team-review": [
|
|
542
|
+
"2932d54e3838f1e916cdf2ebdbd0a9d20324e432c5d909d6f0757137d314ed9b",
|
|
543
|
+
"47fc20ee5d909be07871a06eb23e655e6033a40edc82de9f071b77ac2c89efbb",
|
|
544
|
+
"5038d93be92b0975a36a4387886901bcb1992919cf6d27f4e31b520f44179c91",
|
|
545
|
+
"52c2d7953ae1448c1fa563e2574720a0d4bb4013bf85f7668a7201780568c023",
|
|
546
|
+
"5becf3b534c1e8526e99c959c9c3a4b7f8fcf8c93eae5869be3a7c50e737b735",
|
|
547
|
+
"dd85a9f8b1dc7d60b5859f4bad4af9e8a939720cca815dc75aaf50db8a6fef5e",
|
|
548
|
+
"ec556b38246f5609357a0a0cd9788acd80e40d9fad6b6be3c1e9ab046b400570"
|
|
549
|
+
],
|
|
550
|
+
"devlyn-update-docs": [
|
|
551
|
+
"3aead216c40294c57745529669f033de74f19a8706aaeb768f204a9f8b267c63",
|
|
552
|
+
"640211292f80571ffe0a1dbfcdff40f3ad9261ad8888cb174460036f74aa72d4",
|
|
553
|
+
"918cf5f4c0124c882122ee714836698a435797016984e95e3f31ac205f2f2910"
|
|
54
554
|
],
|
|
55
555
|
"dokkit": [
|
|
56
|
-
"
|
|
556
|
+
"3fd2a6322cb1568ccf4c9e3dca142b35eddf1d20e7ae569942be8f0463a8e172",
|
|
557
|
+
"42045db4e2f70f68d0ed90a9c7c5c2660a6d5183ea641dfa9f2f1f0d0938e3fb",
|
|
558
|
+
"59c331161b355226ef241c95b70ee46a447999c7445c96bd1137a218707723a4"
|
|
559
|
+
],
|
|
560
|
+
"feature-gap-analysis": [
|
|
561
|
+
"782fbbe850e0f846c90b97bc1df57be1c9b95be6d70ee4c8cc4b55c871e027e5"
|
|
57
562
|
],
|
|
58
563
|
"generate-skill": [
|
|
59
|
-
"16a78b867539c0bc11a44f3ecfa1762ba7fcba8841fca8558abe818fc961ff68"
|
|
564
|
+
"16a78b867539c0bc11a44f3ecfa1762ba7fcba8841fca8558abe818fc961ff68",
|
|
565
|
+
"ab9ef07595e303b1cd1dcc6f48a30831b471b77c3028f78e30e16c4b0f5aa3e2",
|
|
566
|
+
"f92dea36b421df6673a036c2573940f3d5bf3f9065ca157e10cd58abcbf1698c"
|
|
567
|
+
],
|
|
568
|
+
"investigate": [
|
|
569
|
+
"e2de5290cbc19d37e37bf8ef470e21f18042f7dfbdb853bf9bcc38755790321d"
|
|
60
570
|
],
|
|
61
571
|
"polar-billing-setup": [
|
|
62
572
|
"8b6dc842903e7343ac7b1e3a1c55911a9987552196ffb27a11a86093537fe976"
|
|
63
573
|
],
|
|
64
574
|
"prompt-engineering": [
|
|
575
|
+
"0df08f86d277f9f684e04e083023bfe539d44db38e3171250a7f18ea57fc6727",
|
|
65
576
|
"d7a0718ab0fd7e0a3c0d8ef8bc4e0349edfc843648343f08f9776e1ea047573c"
|
|
66
577
|
],
|
|
67
578
|
"pyx-scan": [
|
|
68
579
|
"60f02fa049616e94fff4318c96dc9f417b3def7ec75a3bd0846f2bcbd99b0b69"
|
|
69
580
|
],
|
|
70
581
|
"root-cause-analysis": [
|
|
582
|
+
"03026c720a3451226fb20c8a0af65c35e58f3653e97521c887e5bdd9e4302dfd",
|
|
583
|
+
"08ddd7044848cd55b9e40207e9b5f15c6eaec4a4a3cc5cb68961f0eb5a13e305",
|
|
584
|
+
"224b8daf20bc71a608cc378142c09d63a183f0989fd03a779d914b14ab5d9f68",
|
|
585
|
+
"5f538c532d2bc060453ca9ab6725030c0afbff9fecd1b8dc41c807c3a29ad3db",
|
|
586
|
+
"ac2b94bbfbdf30bbe8d2f154f46346f4709846f6a5325ee4134869fac2bb6e82",
|
|
71
587
|
"eeb20fe09edd37b07360c3440b68bdb488abee4917d4e808e64e3889c6addf5a"
|
|
72
588
|
],
|
|
73
589
|
"ui-implementation-standards": [
|
|
74
|
-
"0fbaad2b7d77462916d9364b97b921354ffbf945a68e9e0d422b3a88d36d2569"
|
|
590
|
+
"0fbaad2b7d77462916d9364b97b921354ffbf945a68e9e0d422b3a88d36d2569",
|
|
591
|
+
"2472fc5b598a6ba3e2692cf1d9f775b27b4b6669d51c8282d0be3273c7b4a9c4",
|
|
592
|
+
"3cbfd9ec0ece1c196fc5aaf4558fa0b40926ac957fbc0c426732f92d7827a491",
|
|
593
|
+
"8c162e0d8b44a69b22b5d17e0c305ce027c7323cb535d947f767bf339c8cc054",
|
|
594
|
+
"a8f768fb0ac838c44221c4656eb8c3ebb12a29f13c8ee9b34aef9180c27ea775"
|
|
595
|
+
],
|
|
596
|
+
"vercel-composition-patterns": [
|
|
597
|
+
"9f73c0e78ca790c0d964aba5a40aff93c1f745a3c5481e6a1e356f09f3931075"
|
|
598
|
+
],
|
|
599
|
+
"vercel-react-best-practices": [
|
|
600
|
+
"18153870565cabc4f1d134820732c975694533e3f8634ad16d113795f5f562e5"
|
|
601
|
+
],
|
|
602
|
+
"vercel-react-native-skills": [
|
|
603
|
+
"acfb861607a25acc76a20da9e4f26b766a3b72c5d7522de2e8f2fbabb231af1c"
|
|
604
|
+
],
|
|
605
|
+
"web-design-guidelines": [
|
|
606
|
+
"288ad79d921362a232c491e2df598c5e1dd544e3f3969b0f42d605ffa81f7dad"
|
|
607
|
+
],
|
|
608
|
+
"workflow-routing": [
|
|
609
|
+
"711cd2633df2062104f12d50037a07a1012a90ab18c422cb5fdf665fcb9dc987",
|
|
610
|
+
"d6a98c105a0d1952de90c39ca0734cb70cbdd116e6b4a4d45507d796bd2a9e88"
|
|
75
611
|
]
|
|
76
612
|
},
|
|
77
613
|
"commands": {
|
package/bin/skill-ownership.js
CHANGED
|
@@ -3,21 +3,33 @@ const fs = require('fs');
|
|
|
3
3
|
const path = require('path');
|
|
4
4
|
const { spawnSync } = require('child_process');
|
|
5
5
|
|
|
6
|
-
//
|
|
7
|
-
//
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
6
|
+
// CPython caches contain only regular *.pyc files. A mixed directory is ordinary
|
|
7
|
+
// content; the fingerprint walker below still refuses links and special files.
|
|
8
|
+
// No published version shipped standalone *.pyc files, so those count as edits.
|
|
9
|
+
function isIgnoredEntry(full) {
|
|
10
|
+
const stat = fs.lstatSync(full, { throwIfNoEntry: false });
|
|
11
|
+
const name = path.basename(full);
|
|
12
|
+
if (stat?.isFile()) return ['.DS_Store', 'Thumbs.db'].includes(name);
|
|
13
|
+
if (name !== '__pycache__' || !stat?.isDirectory()) return false;
|
|
14
|
+
return fs.readdirSync(full).every((child) =>
|
|
15
|
+
child.endsWith('.pyc') && fs.lstatSync(path.join(full, child)).isFile());
|
|
11
16
|
}
|
|
12
17
|
|
|
13
18
|
// SHA-256 of a file with CRLF read as LF: Git for Windows checks text out with CRLF by
|
|
14
|
-
// default
|
|
19
|
+
// default. 2.8.0-4.0.0 stamped only the exact assignment sentinel in .md files.
|
|
20
|
+
// Accept only shellDoubleQuoteDefault's escapes and an absolute original path.
|
|
15
21
|
function contentHash(file) {
|
|
16
|
-
|
|
22
|
+
let bytes = fs.readFileSync(file).toString('latin1').replace(/\r\n/g, '\n');
|
|
23
|
+
if (path.extname(file) === '.md') {
|
|
24
|
+
bytes = bytes.replace(/\$\{CLAUDE_SKILL_DIR:-((?:\\[\\$"`}]|[^\\$"`}\n])+)\}/g, (match, escaped) => {
|
|
25
|
+
const original = escaped.replace(/\\([\\$"`}])/g, '$1');
|
|
26
|
+
return /^(?:\/|[A-Za-z]:\\|\\\\)/.test(original) ? '${CLAUDE_SKILL_DIR:-__DEVLYN_SKILL_DIR__}' : match;
|
|
27
|
+
});
|
|
28
|
+
}
|
|
17
29
|
return crypto.createHash('sha256').update(bytes, 'latin1').digest('hex');
|
|
18
30
|
}
|
|
19
31
|
|
|
20
|
-
// Hash every entry, including empty directories and dotfiles, except
|
|
32
|
+
// Hash every entry, including empty directories and dotfiles, except generated metadata. Links and
|
|
21
33
|
// special files are never installer-owned.
|
|
22
34
|
function fingerprint(dir) {
|
|
23
35
|
const entries = [];
|
|
@@ -26,7 +38,7 @@ function fingerprint(dir) {
|
|
|
26
38
|
if (stat.isDirectory()) {
|
|
27
39
|
entries.push([relative, 'directory']);
|
|
28
40
|
for (const name of fs.readdirSync(full).sort()) {
|
|
29
|
-
if (
|
|
41
|
+
if (isIgnoredEntry(path.join(full, name))) continue;
|
|
30
42
|
visit(path.join(full, name), relative ? `${relative}/${name}` : name);
|
|
31
43
|
}
|
|
32
44
|
} else if (stat.isFile()) {
|
|
@@ -64,4 +76,4 @@ function trackedPaths(root) {
|
|
|
64
76
|
return files.stdout.split('\0').filter(Boolean).map((file) => path.resolve(repo.stdout.trim(), file));
|
|
65
77
|
}
|
|
66
78
|
|
|
67
|
-
module.exports = { contentHash, fingerprint,
|
|
79
|
+
module.exports = { contentHash, fingerprint, isIgnoredEntry, trackedPaths };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "devlyn-cli",
|
|
3
|
-
"version": "4.2.
|
|
3
|
+
"version": "4.2.7",
|
|
4
4
|
"description": "Loop & harness engineering for AI coding agents (Claude Code, Codex, and any AGENTS.md-driven agent) — core engineering principles for CLAUDE.md/AGENTS.md and a loop designer that splits one intent into tasks agents drain hands-free",
|
|
5
5
|
"homepage": "https://github.com/fysoul17/devlyn-cli#readme",
|
|
6
6
|
"bin": {
|