Public record
Software health reportschema 0.27.0 · metrics 1.13.0 · 2026-07-25 18:05 UTC

hed-hog / cli

TypeScript · EJSNo license detected★ 1 star⑂ 0 forkssince Sep 2024View on GitHub ↗

hed-hog/cli holds a health index of 8 out of 100, placing it in the Critical band. It scores highest on AI Readiness (38/100) and lowest on Vitality (1/100). It was last updated 463 days ago. A single contributor accounts for most of its recent work.

8
overall / 100
Critical

Software health index

Metrics are grouped into weighted categories on one standardized 1–100 scale. Overall starts as their weighted mean; when public evidence triggers the High-Risk Jurisdiction Policy, the rating is adjusted and receives an At risk ceiling of 49. AI Readiness sits outside the overall score.

8
Excellent85-100Exemplary; meets essentially all checked criteria
Good70-84Healthy; minor gaps
Moderate50-69Acceptable with notable gaps; review recommended
At risk30-49Significant weaknesses; adoption warrants caution
Critical1-29Severe problems (abandoned, single-maintainer, no hygiene)
VitalityCommunity &AdoptionSustainability &GovernanceEngineeringQualitySecurityAI Readiness

Score profile

Each axis is a category. The shape matters more than the average — a healthy subject fills the whole shape, while a spike-and-crater profile means strength in one dimension is masking risk in another.

A dependency reported as a malicious package applies a 35% multiplier to weighted overall health and gives it a Critical ceiling of 29.

Ownership

HedHogOrganization
1 follower7 public repossince Aug 2024

This repository is backed by an organization — shared, accountable stewardship that can outlive any single maintainer.

Package ecosystems

Metrics by category

Vitality

Is the project alive — is code being written and are releases shipping?

1Critical · 22% of overall
How it's scored
0/36Push recency — last push 463 days ago
0/36Commit cadence — 0/52 weeks with commits
0/18Commit volume — 0 commits in the last year
0/10OpenSSF Scorecard: Maintained — 0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0
Inputs used
commits_last_year0
human_commit_share1
days_since_last_push463
active_weeks_last_year0
How it's scored
0/27Ships releases — no releases published
0/36Release recency — no releases
0/27Release cadence — no releases
0/10OpenSSF Scorecard: Signed-Releases — no data
Inputs used
releases_count0
Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.

Community & Adoption

Does the project have users, downloads, attention, and a welcoming setup for contributors?

17Critical · 18% of overall
How it's scored
0/60Stars — 1 stars
0/25Forks — 0 forks
0/15Watchers — 1 watchers
Inputs used
forks0
stars1
watchers1
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
How it's scored
22.5/22.5README
0/22.5License — no license file detected
0/18CONTRIBUTING guide
0/13.5Code of conduct
0/7.2Issue template
0/6.3PR template
Inputs used
has_readmeyes
has_licenseno
has_contributingno
has_issue_templateno
has_code_of_conductno
has_pull_request_templateno
How it's scored
25.9/80Monthly downloads — 86 downloads/month across npm
0/20Registry dependents — not reported by this ecosystem
Inputs used
packages@hedhog/cli
dependents
ecosystemsnpm
total_downloads
monthly_downloads86
Excluded from scoring (no data or not applicable): Registry dependents. Remaining weights renormalized.

Sustainability & Governance

Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?

37At risk · 24% of overall
How it's scored
9/54Bus factor — 1 contributor(s) cover half of all commits
10.6/22.5Commit distribution — top contributor authored 53% of commits
4.1/13.5Contributor breadth — 3 contributors
10/10OpenSSF Scorecard: Contributors — project has 3 contributing companies or organizations -- score normalized to 10
Inputs used
bus_factor1
contributors_sampled3
top_contributor_share0.527
How it's scored
0/46.8Issue resolution — no issues or no data
0/38.3PR acceptance — no decided pull requests or no data
0/15OpenSSF Scorecard: Code-Review — Found 0/30 approved changesets -- score normalized to 0
Inputs used
merged_prs0
open_issues0
closed_issues0
issue_closed_ratio
closed_unmerged_prs0
Excluded from scoring (no data or not applicable): Issue resolution, PR acceptance. Remaining weights renormalized.
How it's scored
30/30Ownership backing — organization-owned
0/20Verified domain
2.2/25Owner reach — 1 followers of hed-hog
10.5/25Track record — 7 public repos, account ~1 yr old
Inputs used
followers1
owner_typeOrganization
is_verified
owner_loginhed-hog
public_repos7
account_age_days719
How it's scored
25/25Published & resolvable — 1 package(s) on npm
14/35Publish recency — latest publish 463 days ago
20/20Version history — 204 published versions
20/20Not deprecated — active, not deprecated or yanked
Inputs used
packages@hedhog/cli
ecosystemsnpm
any_deprecatedno
min_days_since_publish463

Engineering Quality

Are baseline engineering and documentation practices in place?

34At risk · 20% of overall
How it's scored
24/24CI workflows — 1 workflow(s)
0/24Tests present
0/16Linter config
0/9.6Pre-commit hooks
0/6.4.editorconfig
0/20OpenSSF Scorecard: CI-Tests — no data
Inputs used
has_ciyes
has_testsno
has_editorconfigno
has_linter_configno
has_precommit_configno
Excluded from scoring (no data or not applicable): OpenSSF Scorecard: CI-Tests. Remaining weights renormalized.

Documentation

40At risk
How it's scored
30/30README
0/25Documentation directory
0/15Documentation / homepage site
0/10Repository description
0/10Topics
10/10Wiki
Inputs used
topics
has_wikiyes
homepage
has_readmeyes
has_docs_dirno
has_descriptionno

Security

Are visible security and supply-chain practices strong, without unresolved high-risk jurisdiction exposure?

22Critical · 16% of overall
How it's scored
7.5/7.5Binary-Artifacts — no binaries found in the repo
0/7.5Branch-Protection — branch protection not enabled on development/release branches
0/2.5CI-Tests — no data
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
0/7.5Code-Review — Found 0/30 approved changesets -- score normalized to 0
2.5/2.5Contributors — project has 3 contributing companies or organizations -- score normalized to 10
10/10Dangerous-Workflow — no dangerous workflow patterns detected
0/7.5Dependency-Update-Tool — no update tool detected
0/5Fuzzing — project is not fuzzed
0/2.5License — license file not detected
0/7.5Maintained — 0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0
0/5Packaging — no data
0/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
0/5SAST — no SAST tool detected
0/5Security-Policy — security policy file not detected
0/7.5Signed-Releases — no data
0/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
0/7.5Vulnerabilities — 31 existing vulnerabilities detected
Inputs used
sourceopenssf_scorecard
checks_evaluated15
scorecard_versionv5.5.0
checks_inconclusive3
scorecard_aggregate2.2
malicious_dependency_cap29
malicious_dependency_multiplier35
security_posture_before_malicious22
Excluded from scoring (no data or not applicable): ci_tests, packaging, signed_releases. Remaining weights renormalized. A dependency reported as a malicious package applies a 35% multiplier to Security posture and gives it a Critical ceiling of 29.
How it's scored
35/35Direct dependencies free of known advisories — no direct dependency carries a known advisory
8.4/25Indirect dependencies free of known advisories — 2 affected: brace-expansion 2.1.2 (high 7.5), tmp 0.0.33 (high 7.5)
33.7/40No advisories left outstanding — 1 advisory-carrying package(s) unaddressed past 90 days; oldest published 353 days ago
Inputs used
sourceosv
advisories3
affected_packages2
assessed_packages218
unassessed_packages0
affected_by_severityhigh 2
direct_affected_packages0
Matched the npm:@hedhog/cli@0.0.206 runtime dependency closure — what installing the published package pulls in — 218 packages. Reachability is not analyzed.

AI Readiness

How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score.

38At risk · 0% of overall
How it's scored
0/45Agent instructions — no CLAUDE.md / AGENTS.md / editor rules
0/15Machine-readable docs (llms.txt)
28.8/40Legible commit history — 54 of 100 human commits state their intent (structured subject or explanatory body)
Inputs used
has_llms_txtno
legible_history_share0.54
agent_instruction_files
agent_instruction_max_bytes
How it's scored
0/18One-command bootstrap
0/22Automated tests
0/11Lint / format config
11/11Static type checking — tools/gulp/tsconfig.json, tsconfig.json
10/10Reproducible environment — lockfile
0/10Demonstrated agent practice — no agent-authored commits among the last 100
0/8Automated maintenance — no automated dependency updates observed
0/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
Inputs used
has_nixno
has_testsno
lockfilespackage-lock.json
has_dockerfileno
typed_languageyes
bootstrap_files
has_devcontainerno
has_linter_configno
typecheck_configstools/gulp/tsconfig.json, tsconfig.json
agent_commit_share0
toolchain_manifests
dependency_bot_commit_share0
How it's scored
45/45Type-checkable code — TypeScript (statically typed)
55/55Manageable file sizes — 0/138 source files over 60KB
Inputs used
primary_languageTypeScript
largest_source_bytes48,812
source_files_sampled138
oversized_source_files0

Key facts

1GitHub stars
3contributors
0commits, last 12 months
463days since last push
0releases
1bus factor
0open issues
npmpackage ecosystems

Data collection warnings

  • Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token

More detail

OpenSSF Scorecard 2.2 / 10
2.2aggregate

Independent, tool-agnostic security assessment from the open-source OpenSSF Scorecard. Each check rewards a security practice, not a specific vendor's tool. Checks Scorecard could not determine are marked n/a and excluded from the security score (never counted as zero).Scorecard v5.5.0 · 2026-07-25 18:05 UTC

10Binary-Artifactsno binaries found in the repo
0Branch-Protectionbranch protection not enabled on development/release branches
n/aCI-Testsno pull request found
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
0Code-ReviewFound 0/30 approved changesets -- score normalized to 0
10Contributorsproject has 3 contributing companies or organizations -- score normalized to 10
10Dangerous-Workflowno dangerous workflow patterns detected
0Dependency-Update-Toolno update tool detected
0Fuzzingproject is not fuzzed
0Licenselicense file not detected
0Maintained0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0
n/aPackagingpackaging workflow not detected
0Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 0
0SASTno SAST tool detected
0Security-Policysecurity policy file not detected
n/aSigned-Releasesno releases found
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
0Vulnerabilities31 existing vulnerabilities detected
Direct dependencies 19
RegistryPackageVersion constraintManifest
npm@commander-js/extra-typings^12.1.0package.json
npm@types/bcryptjs^2.4.6package.json
npmbcryptjs^2.4.3package.json
npmchalk4.1.2package.json
npmcli-table30.6.5package.json
npmcommander^12.1.0package.json
npmejs^3.1.10package.json
npmhttp^0.0.1-securitypackage.json
npminquirer8.2.6package.json
npmisomorphic-git^1.27.1package.json
npmmysql2^3.11.2package.json
npmnode-emoji^2.1.3package.json
npmopenai^4.71.0package.json
npmpg^8.12.0package.json
npmprettier^3.3.3package.json
npmreflect-metadata^0.2.2package.json
npmtypeorm^0.3.20package.json
npmtypescript^5.6.2package.json
npmyaml^2.6.0package.json
All dependencies 464

Full resolved dependency set from the GitHub dependency graph: 20 direct and 444 indirect (transitive) packages. The transitive closure is complete when the repository commits a lockfile.

RegistryPackageVersionRelation
npm@commander-js/extra-typings12.1.0direct
npm@types/bcryptjs2.4.6direct
npmbcryptjs2.4.3direct
npmchalk4.1.2direct
npmcli-table30.6.5direct
npmcommander12.1.0direct
npmcommander2.20.3direct
npmejs3.1.10direct
npmhttp0.0.1-securitydirect
npminquirer8.2.6direct
npmisomorphic-git1.27.1direct
npmmysql23.11.2direct
npmnode-emoji2.1.3direct
npmopenai4.71.0direct
npmpg8.12.0direct
npmprettier3.3.3direct
npmreflect-metadata0.2.2direct
npmtypeorm0.3.20direct
npmtypescript5.6.2direct
npmyaml2.6.0direct
npm@colors/colors1.5.0indirect
npm@cspotcode/source-map-support0.8.1indirect
npm@gulpjs/messages1.1.0indirect
npm@gulpjs/to-absolute-glob4.0.0indirect
npm@hedhog/utils0.0.19indirect
npm@isaacs/cliui8.0.2indirect
npm@jridgewell/gen-mapping0.3.5indirect
npm@jridgewell/resolve-uri3.1.2indirect
npm@jridgewell/set-array1.2.1indirect
npm@jridgewell/source-map0.3.6indirect
npm@jridgewell/sourcemap-codec1.5.0indirect
npm@jridgewell/trace-mapping0.3.25indirect
npm@jridgewell/trace-mapping0.3.9indirect
npm@pkgjs/parseargs0.11.0indirect
npm@sindresorhus/is4.6.0indirect
npm@sqltools/formatter1.2.5indirect
npm@tsconfig/node101.0.11indirect
npm@tsconfig/node121.0.11indirect
npm@tsconfig/node141.0.3indirect
npm@tsconfig/node161.0.4indirect
npm@types/ejs3.1.5indirect
npm@types/estree1.0.5indirect
npm@types/expect1.20.4indirect
npm@types/glob-stream8.0.2indirect
npm@types/gulp4.0.17indirect
npm@types/inquirer9.0.7indirect
npm@types/json-schema7.0.15indirect
npm@types/node18.19.64indirect
npm@types/node22.5.4indirect
npm@types/node-emoji1.8.2indirect
npm@types/node-fetch2.6.11indirect
npm@types/pg8.11.9indirect
npm@types/picomatch3.0.1indirect
npm@types/streamx2.9.5indirect
npm@types/through0.0.33indirect
npm@types/undertaker1.2.11indirect
npm@types/undertaker-registry1.0.4indirect
npm@types/vinyl2.0.12indirect
npm@types/vinyl-fs3.0.5indirect
npm@webassemblyjs/ast1.12.1indirect
npm@webassemblyjs/floating-point-hex-parser1.11.6indirect
npm@webassemblyjs/helper-api-error1.11.6indirect
npm@webassemblyjs/helper-buffer1.12.1indirect
npm@webassemblyjs/helper-numbers1.11.6indirect
npm@webassemblyjs/helper-wasm-bytecode1.11.6indirect
npm@webassemblyjs/helper-wasm-section1.12.1indirect
npm@webassemblyjs/ieee7541.11.6indirect
npm@webassemblyjs/leb1281.11.6indirect
npm@webassemblyjs/utf81.11.6indirect
npm@webassemblyjs/wasm-edit1.12.1indirect
npm@webassemblyjs/wasm-gen1.12.1indirect
npm@webassemblyjs/wasm-opt1.12.1indirect
npm@webassemblyjs/wasm-parser1.12.1indirect
npm@webassemblyjs/wast-printer1.12.1indirect
npm@xtuc/ieee7541.2.0indirect
npm@xtuc/long4.2.2indirect
npmabort-controller3.0.0indirect
npmacorn8.14.0indirect
npmacorn-import-attributes1.9.5indirect
npmacorn-walk8.3.4indirect
npmagentkeepalive4.5.0indirect
npmajv6.12.6indirect
npmajv-keywords3.5.2indirect
npmansi-colors4.1.3indirect
npmansi-cyan0.1.1indirect
npmansi-escapes4.3.2indirect
npmansi-gray0.1.1indirect
npmansi-red0.1.1indirect
npmansi-regex5.0.1indirect
npmansi-regex6.1.0indirect
npmansi-styles4.3.0indirect
npmansi-styles6.2.1indirect
npmansi-wrap0.1.0indirect
npmany-promise1.3.0indirect
npmanymatch3.1.3indirect
npmapp-root-path3.1.0indirect
npmarg4.1.3indirect
npmarr-diff1.1.0indirect
npmarr-flatten1.1.0indirect
npmarr-union2.1.0indirect
npmarray-each1.0.1indirect
npmarray-slice0.2.3indirect
npmarray-slice1.1.0indirect
npmasync3.2.6indirect
npmasync-done1.3.2indirect
npmasync-done2.0.0indirect
npmasync-lock1.4.1indirect
npmasync-settle2.0.0indirect
npmasynckit0.4.0indirect
npmaws-ssl-profiles1.1.2indirect
npmb4a1.6.6indirect
npmbach2.0.1indirect
npmbalanced-match1.0.2indirect
npmbare-events2.4.2indirect
npmbase64-js1.5.1indirect
npmbinary-extensions2.3.0indirect
npmbl4.1.0indirect
npmbl5.1.0indirect
npmbrace-expansion1.1.11indirect
npmbrace-expansion2.0.1indirect
npmbraces3.0.3indirect
npmbrowserslist4.23.3indirect
npmbuffer5.7.1indirect
npmbuffer6.0.3indirect
npmbuffer-from1.1.2indirect
npmcaniuse-lite1.0.30001660indirect
npmchar-regex1.0.2indirect
npmchardet0.7.0indirect
npmchokidar3.6.0indirect
npmchrome-trace-event1.0.4indirect
npmclean-git-ref2.0.1indirect
npmcli-cursor3.1.0indirect
npmcli-highlight2.1.11indirect
npmcli-spinners2.9.2indirect
npmcli-width3.0.0indirect
npmcliui7.0.4indirect
npmcliui8.0.1indirect
npmclone1.0.4indirect
npmclone2.1.2indirect
npmclone-buffer1.0.0indirect
npmclone-stats1.0.0indirect
npmcloneable-readable1.1.3indirect
npmcolor-convert2.0.1indirect
npmcolor-name1.1.4indirect
npmcolor-support1.1.3indirect
npmcombined-stream1.0.8indirect
npmconcat-map0.0.1indirect
npmconcurrently9.0.0indirect
npmconvert-source-map2.0.0indirect
npmcopy-props4.0.0indirect
npmcore-util-is1.0.3indirect
npmcrc-321.2.2indirect
npmcreate-require1.1.1indirect
npmcross-spawn7.0.6indirect
npmdayjs1.11.13indirect
npmdebug4.3.7indirect
npmdecompress-response6.0.0indirect
npmdefaults1.0.4indirect
npmdelayed-stream1.0.0indirect
npmdelete-empty3.0.0indirect
npmdenque2.1.0indirect
npmdetect-file1.0.0indirect
npmdiff4.0.2indirect
npmdiff30.0.3indirect
npmdotenv16.4.5indirect
npmeach-props3.0.0indirect
npmeastasianwidth0.2.0indirect
npmelectron-to-chromium1.5.18indirect
npmemoji-regex8.0.0indirect
npmemoji-regex9.2.2indirect
npmemojilib2.4.0indirect
npmend-of-stream1.4.4indirect
npmenhanced-resolve5.17.1indirect
npmes-module-lexer1.5.4indirect
npmescalade3.2.0indirect
npmescape-string-regexp1.0.5indirect
npmeslint-scope5.1.1indirect
npmesrecurse4.3.0indirect
npmestraverse4.3.0indirect
npmestraverse5.3.0indirect
npmevent-target-shim5.0.1indirect
npmevents3.3.0indirect
npmexpand-tilde2.0.2indirect
npmextend3.0.2indirect
npmextend-shallow1.1.4indirect
npmexternal-editor3.1.0indirect
npmfancy-log1.3.3indirect
npmfast-deep-equal3.1.3indirect
npmfast-fifo1.3.2indirect
npmfast-json-stable-stringify2.1.0indirect
npmfast-levenshtein3.0.0indirect
npmfastest-levenshtein1.0.16indirect
npmfastq1.17.1indirect
npmfigures3.2.0indirect
npmfilelist1.0.4indirect
npmfill-range7.1.1indirect
npmfindup-sync5.0.0indirect
npmfined2.0.0indirect
npmflagged-respawn2.0.0indirect
npmfor-in1.0.2indirect
npmfor-own1.0.0indirect
npmforeground-child3.3.0indirect
npmform-data4.0.1indirect
npmform-data-encoder1.7.2indirect
npmformdata-node4.4.1indirect
npmfs-mkdirp-stream2.0.1indirect
npmfs.realpath1.0.0indirect
npmfsevents2.3.3indirect
npmfunction-bind1.1.2indirect
npmgenerate-function2.3.1indirect
npmget-caller-file2.0.5indirect
npmglob10.4.5indirect
npmglob7.2.3indirect
npmglob-parent5.1.2indirect
npmglob-parent6.0.2indirect
npmglob-stream8.0.2indirect
npmglob-to-regexp0.4.1indirect
npmglob-watcher6.0.0indirect
npmglobal-modules1.0.0indirect
npmglobal-prefix1.0.2indirect
npmglogg2.2.0indirect
npmgraceful-fs4.2.11indirect
npmgulp5.0.0indirect
npmgulp-clean0.4.0indirect
npmgulp-cli3.0.0indirect
npmgulplog2.2.0indirect
npmhas-flag4.0.0indirect
npmhasown2.0.2indirect
npmhighlight.js10.7.3indirect
npmhomedir-polyfill1.0.3indirect
npmhumanize-ms1.2.1indirect
npmiconv-lite0.4.24indirect
npmiconv-lite0.6.3indirect
npmieee7541.2.1indirect
npmignore5.3.2indirect
npminflight1.0.6indirect
npminherits2.0.4indirect
npmini1.3.8indirect
npminterpret3.1.1indirect
npmis-absolute1.0.0indirect
npmis-binary-path2.1.0indirect
npmis-core-module2.15.1indirect
npmis-extglob2.1.1indirect
npmis-fullwidth-code-point3.0.0indirect
npmis-glob4.0.3indirect
npmis-interactive1.0.0indirect
npmis-negated-glob1.0.0indirect
npmis-number7.0.0indirect
npmis-plain-object5.0.0indirect
npmis-property1.0.2indirect
npmis-relative1.0.0indirect
npmis-unc-path1.0.0indirect
npmis-unicode-supported0.1.0indirect
npmis-valid-glob1.0.0indirect
npmis-windows1.0.2indirect
npmisarray1.0.0indirect
npmisexe2.0.0indirect
npmisobject3.0.1indirect
npmjackspeak3.4.3indirect
npmjake10.9.2indirect
npmjest-worker27.5.1indirect
npmjson-parse-even-better-errors2.3.1indirect
npmjson-schema-traverse0.4.1indirect
npmjson52.2.3indirect
npmkind-of1.1.0indirect
npmlast-run2.0.0indirect
npmlead4.0.0indirect
npmliftoff5.0.0indirect
npmloader-runner4.3.0indirect
npmlodash4.17.21indirect
npmlog-symbols4.1.0indirect
npmlong5.2.3indirect
npmlru-cache10.4.3indirect
npmlru-cache7.18.3indirect
npmlru.min1.1.0indirect
npmmake-error1.3.6indirect
npmmap-cache0.2.2indirect
npmmerge-stream2.0.0indirect
npmmicromatch4.0.8indirect
npmmime-db1.52.0indirect
npmmime-types2.1.35indirect
npmmimic-fn2.1.0indirect
npmmimic-response3.1.0indirect
npmminimatch3.1.2indirect
npmminimatch5.1.6indirect
npmminimatch9.0.5indirect
npmminimist1.2.8indirect
npmminimisted2.0.1indirect
npmminipass7.1.2indirect
npmmkdirp2.1.6indirect
npmms2.1.3indirect
npmmute-stdout2.0.0indirect
npmmute-stream0.0.8indirect
npmmz2.7.0indirect
npmnamed-placeholders1.1.3indirect
npmneo-async2.6.2indirect
npmnode-domexception1.0.0indirect
npmnode-fetch2.7.0indirect
npmnode-releases2.0.18indirect
npmnormalize-path3.0.0indirect
npmnow-and-later3.0.0indirect
npmobject-assign4.1.1indirect
npmobject.defaults1.1.0indirect
npmobject.pick1.3.0indirect
npmobuf1.1.2indirect
npmonce1.4.0indirect
npmonetime5.1.2indirect
npmora5.4.1indirect
npmos-tmpdir1.0.2indirect
npmpackage-json-from-dist1.0.1indirect
npmpako1.0.11indirect
npmparse-filepath1.0.2indirect
npmparse-node-version1.0.1indirect
npmparse-passwd1.0.0indirect
npmparse55.1.1indirect
npmparse56.0.1indirect
npmparse5-htmlparser2-tree-adapter6.0.1indirect
npmpath-is-absolute1.0.1indirect
npmpath-key3.1.1indirect
npmpath-parse1.0.7indirect
npmpath-root0.1.1indirect
npmpath-root-regex0.1.2indirect
npmpath-scurry1.11.1indirect
npmpath-starts-with2.0.1indirect
npmpg-cloudflare1.1.1indirect
npmpg-connection-string2.6.4indirect
npmpg-int81.0.1indirect
npmpg-numeric1.0.2indirect
npmpg-pool3.6.2indirect
npmpg-protocol1.6.1indirect
npmpg-types2.2.0indirect
npmpg-types4.0.2indirect
npmpgpass1.0.5indirect
npmpicocolors1.1.0indirect
npmpicomatch2.3.1indirect
npmpify4.0.1indirect
npmplugin-error0.1.2indirect
npmpostgres-array2.0.0indirect
npmpostgres-array3.0.2indirect
npmpostgres-bytea1.0.0indirect
npmpostgres-bytea3.0.0indirect
npmpostgres-date1.0.7indirect
npmpostgres-date2.1.0indirect
npmpostgres-interval1.2.0indirect
npmpostgres-interval3.0.0indirect
npmpostgres-range1.1.4indirect
npmprocess-nextick-args2.0.1indirect
npmpunycode2.3.1indirect
npmqueue-tick1.0.1indirect
npmrandombytes2.1.0indirect
npmreadable-stream2.3.8indirect
npmreadable-stream3.6.2indirect
npmreaddirp3.6.0indirect
npmrechoir0.8.0indirect
npmremove-trailing-separator1.1.0indirect
npmreplace-ext1.0.1indirect
npmreplace-ext2.0.0indirect
npmreplace-homedir2.0.0indirect
npmrequire-directory2.1.1indirect
npmresolve1.22.8indirect
npmresolve-dir1.0.1indirect
npmresolve-options2.0.0indirect
npmrestore-cursor3.1.0indirect
npmreusify1.0.4indirect
npmrimraf2.7.1indirect
npmrun-async2.4.1indirect
npmrxjs7.8.1indirect
npmsafe-buffer5.1.2indirect
npmsafe-buffer5.2.1indirect
npmsafer-buffer2.1.2indirect
npmschema-utils3.3.0indirect
npmsemver6.3.1indirect
npmsemver7.6.3indirect
npmsemver-greatest-satisfied-range2.0.0indirect
npmseq-queue0.0.5indirect
npmserialize-javascript6.0.2indirect
npmsh0.0.3indirect
npmsha.js2.4.11indirect
npmshebang-command2.0.0indirect
npmshebang-regex3.0.0indirect
npmshell-quote1.8.1indirect
npmsignal-exit3.0.7indirect
npmsignal-exit4.1.0indirect
npmsimple-concat1.0.1indirect
npmsimple-get4.0.1indirect
npmskin-tone2.0.0indirect
npmsource-map0.6.1indirect
npmsource-map0.7.4indirect
npmsource-map-support0.5.21indirect
npmsparkles2.1.0indirect
npmsplit24.2.0indirect
npmsqlstring2.3.3indirect
npmstream-composer1.0.2indirect
npmstream-exhaust1.0.2indirect
npmstreamx2.20.1indirect
npmstring-width4.2.3indirect
npmstring-width5.1.2indirect
npmstring_decoder1.1.1indirect
npmstring_decoder1.3.0indirect
npmstrip-ansi6.0.1indirect
npmstrip-ansi7.1.0indirect
npmstrip-bom3.0.0indirect
npmsupports-color7.2.0indirect
npmsupports-color8.1.1indirect
npmsupports-preserve-symlinks-flag1.0.0indirect
npmsver1.8.4indirect
npmtapable2.2.1indirect
npmteex1.0.1indirect
npmterser5.32.0indirect
npmterser-webpack-plugin5.3.10indirect
npmtext-decoder1.2.0indirect
npmthenify3.3.1indirect
npmthenify-all1.6.0indirect
npmthrough2.3.8indirect
npmthrough22.0.5indirect
npmtime-stamp1.1.0indirect
npmtmp0.0.33indirect
npmto-regex-range5.0.1indirect
npmto-through3.0.0indirect
npmtr460.0.3indirect
npmtree-kill1.2.2indirect
npmts-loader9.5.1indirect
npmts-node10.9.2indirect
npmtsconfig-paths4.2.0indirect
npmtslib2.7.0indirect
npmtype-fest0.21.3indirect
npmunc-path-regex0.1.2indirect
npmundertaker2.0.0indirect
npmundertaker-registry2.0.0indirect
npmundici-types5.26.5indirect
npmundici-types6.19.8indirect
npmunicode-emoji-modifier-base1.0.0indirect
npmupdate-browserslist-db1.1.0indirect
npmuri-js4.4.1indirect
npmutil-deprecate1.0.2indirect
npmuuid9.0.1indirect
npmv8-compile-cache-lib3.0.1indirect
npmv8flags4.0.1indirect
npmvalue-or-function4.0.0indirect
npmvinyl2.2.1indirect
npmvinyl3.0.0indirect
npmvinyl-contents2.0.0indirect
npmvinyl-fs4.0.0indirect
npmvinyl-sourcemap2.0.0indirect
npmwatchpack2.4.2indirect
npmwcwidth1.0.1indirect
npmweb-streams-polyfill4.0.0-beta.3indirect
npmwebidl-conversions3.0.1indirect
npmwebpack5.94.0indirect
npmwebpack-sources3.2.3indirect
npmwhatwg-url5.0.0indirect
npmwhich1.3.1indirect
npmwhich2.0.2indirect
npmwrap-ansi6.2.0indirect
npmwrap-ansi7.0.0indirect
npmwrap-ansi8.1.0indirect
npmwrappy1.0.2indirect
npmxtend4.0.2indirect
npmy18n5.0.8indirect
npmyargs16.2.0indirect
npmyargs17.7.2indirect
npmyargs-parser20.2.9indirect
npmyargs-parser21.1.1indirect
npmyn3.1.1indirect
Dependency advisories 2

Installing npm:@hedhog/cli@0.0.206 pulls in 218 packages, direct and transitive: 2 carry known advisories, of which 0 are direct dependencies.

PackageVersionRelationSeverityAdvisoriesFixed in
brace-expansion2.1.2indirecthigh15.0.8
tmp0.0.33indirecthigh20.2.6

An advisory means the version recorded in the dependency graph falls inside an advisory’s affected range. Reachability is not analysed, and the graph includes development and test pins — a finding may concern tooling rather than shipped software.

Raw JSON report machine-readable
{
  "data": {
    "repo": {
      "topics": [],
      "is_fork": false,
      "size_kb": 804,
      "has_wiki": true,
      "homepage": null,
      "languages": {
        "EJS": 47381,
        "Shell": 1317,
        "JavaScript": 1407,
        "TypeScript": 317150
      },
      "pushed_at": "2025-04-17T18:43:22Z",
      "created_at": "2024-09-12T19:42:56Z",
      "owner_type": "Organization",
      "updated_at": "2025-12-01T12:50:34Z",
      "description": null,
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": null,
      "default_branch": "master",
      "license_spdx_raw": null,
      "primary_language": "TypeScript",
      "significant_languages": [
        "TypeScript",
        "EJS"
      ]
    },
    "owner": {
      "blog": "https://hedhog.com",
      "name": "HedHog",
      "type": "Organization",
      "login": "hed-hog",
      "company": null,
      "location": "Brazil",
      "followers": 1,
      "avatar_url": "https://avatars.githubusercontent.com/u/177489127?v=4",
      "created_at": "2024-08-04T23:09:22Z",
      "is_verified": null,
      "public_repos": 7,
      "account_age_days": 719
    },
    "license": {
      "state": "absent",
      "spdx_id": null,
      "raw_spdx": null,
      "file_present": false,
      "scorecard_found": false,
      "profile_has_license": false
    },
    "activity": {
      "releases": [],
      "recent_commits": [
        {
          "oid": "9a3ed523a003229974c3163b5ba6484ac765f975",
          "body": null,
          "is_bot": false,
          "headline": "0.0.206",
          "author_name": "Saulo Costa",
          "author_login": "saulotarsobc",
          "committed_at": "2025-04-17T18:43:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9462e3610bdd59115b1f192008fb949ce027d821",
          "body": "…lazy loading logic\n\nThis commit refines the logic for handling module routes in the ApplyAction class. It simplifies the creation of module routes by removing unnecessary children initialization and introduces a conditional lazy loading mechanism based on the number of valid tables. This enhances the clarity and efficiency of the route configuration process.",
          "is_bot": false,
          "headline": "refactor(apply.action): streamline module route handling and improve …",
          "author_name": "Saulo Costa",
          "author_login": "saulotarsobc",
          "committed_at": "2025-04-17T18:42:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d22f09dce0eef2857afc8f0d81a74858ed520209",
          "body": null,
          "is_bot": false,
          "headline": "0.0.205",
          "author_name": "João Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-04-15T17:42:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "41829cdb6e991d7cd89b3b494994dc76b1828385",
          "body": null,
          "is_bot": false,
          "headline": "fix(reset): ensure components directory is created if it does not exist",
          "author_name": "João Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-04-15T17:42:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cc5f92d07e9ffe0b1b3b4029ac1e8d9d3781fd23",
          "body": "…FrontendFiles\n\nThis commit removes a debug console.log statement and adds the `localeFields` parameter to the `createFrontendFiles` method to support localized fields in the frontend templates. The changes ensure that locale-specific fields are properly rendered in the UI components.",
          "is_bot": false,
          "headline": "refactor(frontend): remove console.log and add localeFields to create…",
          "author_name": "Saulo Costa",
          "author_login": "saulotarsobc",
          "committed_at": "2025-04-14T19:53:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f17c267e7b98785c300317ae358f7d6bb032d032",
          "body": null,
          "is_bot": false,
          "headline": "0.0.204",
          "author_name": "Saulo Costa",
          "author_login": "saulotarsobc",
          "committed_at": "2025-04-14T19:38:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9fb357514f9ed6ac336f435332168d3790abb26d",
          "body": "…and consistent formatting\n\nThe changes introduce line breaks and consistent formatting in the `create-panel.ts.ejs` and `update-panel.ts.ejs` templates to enhance readability and maintainability. This restructuring does not alter the functionality of the code.",
          "is_bot": false,
          "headline": "refactor(panel-templates): improve readability by adding line breaks …",
          "author_name": "Saulo Costa",
          "author_login": "saulotarsobc",
          "committed_at": "2025-04-14T19:38:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ed354134e47202d20996f91f3dae56ba35b0777f",
          "body": "Remove unused `localeFields` property from `FileCreator` class and related templates. Adjust the template logic to handle locale fields more explicitly, improving maintainability and clarity.",
          "is_bot": false,
          "headline": "refactor: remove unused localeFields and adjust template logic",
          "author_name": "Saulo Costa",
          "author_login": "saulotarsobc",
          "committed_at": "2025-04-14T18:31:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e440fc2027eeffc40c1b495e6fcfe135f09ff3b0",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'master' of https://github.com/hed-hog/cli",
          "author_name": "Saulo Costa",
          "author_login": "saulotarsobc",
          "committed_at": "2025-04-14T18:19:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4c50507e533eb12f6810c52d2b2b0516199bdb07",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'master' of github.com:hed-hog/cli",
          "author_name": "João Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-04-14T17:59:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7fa7b917efbc4a0eff41986be2f3f67845a75f56",
          "body": null,
          "is_bot": false,
          "headline": "feat: add YAML file patterns to the file inclusion list",
          "author_name": "João Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-04-14T17:59:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5bfc991ea09a1a7a938dd71334ea693c5f8bba43",
          "body": "Removed unnecessary console.log statements for cleaner code. Added localeFields to the FileCreator options interface and initialization to support additional localization data in the file creation process.",
          "is_bot": false,
          "headline": "refactor: remove debug logs and add localeFields to FileCreator options",
          "author_name": "Saulo Costa",
          "author_login": "saulotarsobc",
          "committed_at": "2025-04-14T17:27:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fc22c1bae659827770a5b8d2261c51cf0cbd1415",
          "body": "This commit refactors the code in `apply.action.ts` to enhance readability and maintain consistency. Changes include:\n- Adding a debug log statement for `fields`\n- Aligning object property assignments for better visual structure\n- Ensuring consistent variable naming in template data objects",
          "is_bot": false,
          "headline": "refactor(apply.action.ts): improve code readability and consistency",
          "author_name": "Saulo Costa",
          "author_login": "saulotarsobc",
          "committed_at": "2025-04-14T17:00:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5554e3cf6b098ae653254a29b515eafaedf8b789",
          "body": "The code block syntax for ejs files was incorrectly set to '```ejs'. This has been updated to '```tsx' to ensure proper syntax highlighting in the output.",
          "is_bot": false,
          "headline": "fix(scripts): correct code block syntax for ejs files",
          "author_name": "Saulo Costa",
          "author_login": "saulotarsobc",
          "committed_at": "2025-04-14T14:56:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1379bae4d0495bf75a4f7ab51c1bd07122f2bc32",
          "body": "Replace `any` type with `Table[]` for `localeTables` and add logic to handle locale fields. This enhances type safety and ensures locale fields are correctly processed during DTO creation. Additionally, update debug messages for clarity.",
          "is_bot": false,
          "headline": "refactor: improve type safety and locale field handling in ApplyAction",
          "author_name": "Saulo Costa",
          "author_login": "saulotarsobc",
          "committed_at": "2025-04-14T14:53:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5391e5c2e70756f81bb458be1a45e890f9b0b332",
          "body": "Replace `any[]` with `Table[]` for `localeTables` to enhance type safety. Additionally, refactor the handling of locale fields to ensure proper mapping and logging. This improves maintainability and clarity of the code.",
          "is_bot": false,
          "headline": "refactor(apply.action.ts): improve type safety and code readability",
          "author_name": "Saulo Costa",
          "author_login": "saulotarsobc",
          "committed_at": "2025-04-14T14:51:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "040bf6e1d2aa4a2fd7932c10b952b6d1dfa50d98",
          "body": "Correct the string literal to use double quotes for consistency and fix indentation in the table columns logic to improve code readability",
          "is_bot": false,
          "headline": "style: fix string literal and indentation in apply.action.ts",
          "author_name": "Saulo Costa",
          "author_login": "saulotarsobc",
          "committed_at": "2025-04-14T13:17:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ae6172efef395033bce2e200408b7cb8cc2aec54",
          "body": null,
          "is_bot": false,
          "headline": "0.0.203",
          "author_name": "Saulo Costa",
          "author_login": "saulotarsobc",
          "committed_at": "2025-04-11T22:03:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f65b00ce1fc74fdb7eb05a6d95639abbefd14688",
          "body": null,
          "is_bot": false,
          "headline": "Listagem de arquivos `.ts` e `.ejs` do projeto `@hedhog/cli`",
          "author_name": "Saulo Costa",
          "author_login": "saulotarsobc",
          "committed_at": "2025-04-11T21:26:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2d080fab51e9dcfa813a5c89eedb4d285252d088",
          "body": null,
          "is_bot": false,
          "headline": "output script",
          "author_name": "Saulo Costa",
          "author_login": "saulotarsobc",
          "committed_at": "2025-04-11T20:24:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9f33db1dfdc79faa7c9b4983e10d292bbaf6bca2",
          "body": null,
          "is_bot": false,
          "headline": "0.0.202",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-04-09T18:06:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e44a0b2b098ce94ca951592685b0814bffead5d8",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'master' of github.com:hed-hog/cli",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-04-09T18:05:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e0472bdaacd74bffdd85734de4a6ac3bc2a68347",
          "body": "…ous files",
          "is_bot": false,
          "headline": "refactor: remove unnecessary console logs and improve logging in vari…",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-04-09T18:05:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3155bd9b27e806be57fff5036281eabcccf1dc55",
          "body": null,
          "is_bot": false,
          "headline": "0.0.201",
          "author_name": "Saulo Costa",
          "author_login": "saulotarsobc",
          "committed_at": "2025-04-08T13:15:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9e033ce1e16322e91a566a684f6f1936975ec233",
          "body": null,
          "is_bot": false,
          "headline": "update: Remover removeMigrations function",
          "author_name": "Saulo Costa",
          "author_login": "saulotarsobc",
          "committed_at": "2025-04-08T13:15:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "798d0fd8f9a0585e261ec8baba83290b62c1af27",
          "body": null,
          "is_bot": false,
          "headline": "0.0.200",
          "author_name": "João Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-04-08T01:09:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "af0099bfd4aeca000a8add17958500d7884d1719",
          "body": null,
          "is_bot": false,
          "headline": "chore: remove postprod script and add .version file for version tracking",
          "author_name": "João Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-04-08T01:09:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "62e38114545765457eff512d56e478ec148910eb",
          "body": null,
          "is_bot": false,
          "headline": "0.0.199",
          "author_name": "João Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-04-08T01:06:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6ae0f3f71153c674f124c6df45400dda12f3a0d0",
          "body": null,
          "is_bot": false,
          "headline": "0.0.198",
          "author_name": "João Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-04-08T01:02:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "39adeafe52d99e441da0b01975c1e835655fecf7",
          "body": "… in deployment script",
          "is_bot": false,
          "headline": "refactor: remove console.log statements and replace with console.info…",
          "author_name": "João Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-04-08T01:02:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c52b47a2308b04a95ce1705ad9406bb4129f7cf6",
          "body": null,
          "is_bot": false,
          "headline": "feat: enhance postprod script to dynamically install hed-hog CLI version",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-04-02T03:18:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "494e2311a9d028c249a59f9139823f424982fc51",
          "body": null,
          "is_bot": false,
          "headline": "0.0.197",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-04-02T03:13:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "25ff81a67f75b3a8095bd254f11ca22b124c3b79",
          "body": null,
          "is_bot": false,
          "headline": "0.0.196",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-04-02T03:11:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ec9f7dea863431314cc3262f6397eeaf9ec59c4e",
          "body": null,
          "is_bot": false,
          "headline": "feat: update postprod script to include hed-hog CLI version check",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-04-02T03:11:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "98d0978a809e385d27fa522d652beaa43da879af",
          "body": null,
          "is_bot": false,
          "headline": "feat: update postprod script to install latest hed-hog CLI globally",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-04-02T03:11:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2c32cc08b0d8fb7beb4854d109dc990db6b29eca",
          "body": null,
          "is_bot": false,
          "headline": "0.0.195",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-04-02T03:10:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8633fbf381ff2405d7388c2f68f5fa2065175ce6",
          "body": "…component path handling",
          "is_bot": false,
          "headline": "feat: enhance checkDashboardComponents with detailed logging and fix …",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-04-02T03:10:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e963f831e769b370482351f0c30e797f00b732ce",
          "body": "…nt files during project reset",
          "is_bot": false,
          "headline": "feat: add resetDashboardComponents method to delete dashboard compone…",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-04-02T02:04:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "042c59b40e7843c9e2220cc0d4c442d93cb520c4",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'master' of github.com:hed-hog/cli",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-04-02T02:01:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e792b793c05e857cfaf3b9ac3b91a1ce51544778",
          "body": "…hboard components",
          "is_bot": false,
          "headline": "feat: add checkDashboardComponents method to validate and process das…",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-04-02T02:01:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e8b971ea9bd8673c2dae0362cd0cbb82365dd526",
          "body": null,
          "is_bot": false,
          "headline": "0.0.194",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2025-03-27T17:51:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "25aa515757d8d06fe226558460002e2bb33dcbeb",
          "body": "…tion",
          "is_bot": false,
          "headline": "feat: move createTranslationFiles call to correct position in ApplyAc…",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2025-03-27T17:51:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b910a95bfcde30a6f23096107071b60b34beb68b",
          "body": null,
          "is_bot": false,
          "headline": "0.0.193",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2025-03-27T17:27:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2c655a53445b07ef475ecddcd51a6d4b2574c501",
          "body": "…or cleaner code",
          "is_bot": false,
          "headline": "feat: refactor file writing logic and remove console.log statements f…",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2025-03-27T17:26:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "33af680d7aee3cf63c603f4f03e703d0c8e28f9b",
          "body": null,
          "is_bot": false,
          "headline": "0.0.192",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-03-21T19:29:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ef133e78142a279868e9374da693910c52709d62",
          "body": "… ResetAction",
          "is_bot": false,
          "headline": "feat: remove console.log statements for cleaner code in AddAction and…",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-03-21T19:29:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "61ed462358c45380da5d30ff4461b6c021970e70",
          "body": "…es method",
          "is_bot": false,
          "headline": "feat: refactor ResetAction to use backend path and add resetAdminRout…",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-03-21T19:29:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2afeab62ec6d55294fb63af541e3d90b1e2ddd0a",
          "body": null,
          "is_bot": false,
          "headline": "0.0.191",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-03-19T22:02:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3652cea875b6c8adbe089990f08f14b19df8e695",
          "body": null,
          "is_bot": false,
          "headline": "feat: update module name formatting to PascalCase in AddAction",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-03-19T22:02:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "096a4f856e1f4c33bba8f6c9e965e6d3ce739f57",
          "body": null,
          "is_bot": false,
          "headline": "0.0.190",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2025-03-18T17:14:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "75cb66ff55ca3eae130cec4ce39098d745925797",
          "body": null,
          "is_bot": false,
          "headline": "feat: remove console.log statements for cleaner code",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2025-03-18T17:14:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4f31495c1bd82394bb4a8ca69b1206da32a40fb2",
          "body": null,
          "is_bot": false,
          "headline": "0.0.189",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2025-03-18T16:35:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f340fc14fce522fedb49604edeb117222fc69476",
          "body": "…minho e adiciona logs para depuração",
          "is_bot": false,
          "headline": "feat: ajusta a lógica de carregamento do hedgehog.yaml com base no ca…",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2025-03-18T16:35:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "af8121e9ce19ddcd8e628b96e921b1cf2709e039",
          "body": null,
          "is_bot": false,
          "headline": "0.0.188",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-03-12T22:37:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ad69510dd80d063d1cf9d3569938dfe30f39b0b6",
          "body": "…ed logging",
          "is_bot": false,
          "headline": "feat: replace console.log statements with showDebug method for improv…",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-03-12T22:36:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "55ed2a3d2bc64a6d4dd7ccdbeb32f892e80f06a1",
          "body": null,
          "is_bot": false,
          "headline": "0.0.187",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-03-12T22:15:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "269a8978e3e9d7f625c7cb8312e6a4ed869b64cc",
          "body": "…r cleaner code",
          "is_bot": false,
          "headline": "feat: remove unnecessary console.log statements in AddAction class fo…",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-03-12T22:14:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "07a546c723b448a830b0248f150ed32eb92b76d6",
          "body": null,
          "is_bot": false,
          "headline": "0.0.186",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-03-12T22:12:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1f7d703e99230d5bd1a462c1de12b9eac0ac6f61",
          "body": null,
          "is_bot": false,
          "headline": "feat: remove unnecessary debug flag initialization in AddAction class",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-03-12T22:12:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "37375d0fb2905f2910b2f09a1f135ba590c86a07",
          "body": null,
          "is_bot": false,
          "headline": "0.0.185",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-03-12T17:37:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1820826202706fe9400e5c012381197efecf9399",
          "body": null,
          "is_bot": false,
          "headline": "0.0.184",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-03-12T17:34:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e27053c40782a433fdbb015916318382225c04de",
          "body": "…d utilizing writeHedhogFile utility",
          "is_bot": false,
          "headline": "feat: streamline hedhog file handling by removing redundant checks an…",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-03-12T17:33:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f86ffe809c40c6740d952735a5a49c77b6d6b877",
          "body": null,
          "is_bot": false,
          "headline": "0.0.183",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-03-12T17:28:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "95f9e4201ecc9ff924e9cc2edc86bb8be7166406",
          "body": "…mproved file handling",
          "is_bot": false,
          "headline": "feat: replace YAML stringification with writeHedhogFile utility for i…",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-03-12T17:28:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d479772e51d79607d98bcaaa090a2171ad94d7a5",
          "body": null,
          "is_bot": false,
          "headline": "0.0.182",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-03-12T16:57:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d2515f31a274a227eff4b157b227210171abbb63",
          "body": "…ed consistency and readability",
          "is_bot": false,
          "headline": "feat: refactor file handling to use loadHedhogFile utility for improv…",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-03-12T16:56:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1458d0052a7f6cb856a126193adeb85135315b60",
          "body": null,
          "is_bot": false,
          "headline": "0.0.181",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-03-11T19:51:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3a1e8c6e45cb8fc4100695377f2dab311fdf28c0",
          "body": "…mprove validation output",
          "is_bot": false,
          "headline": "feat: enhance Hedhog file handling with writeHedhogFile utility and i…",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-03-11T19:50:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "36c7b723ca489ed72158ffeb0e55b42fc1e7790a",
          "body": "… improved readability and consistency",
          "is_bot": false,
          "headline": "feat: refactor Hedhog file handling to use loadHedhogFile utility for…",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-03-11T19:15:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a49822cbbd099da43ffea21cc43ab412734590c1",
          "body": null,
          "is_bot": false,
          "headline": "feat: add validate command and action for validating Hedhog files",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-03-11T19:02:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5592cc5bd43a86e9905b94d3b2909a6e59ae1c01",
          "body": null,
          "is_bot": false,
          "headline": "0.0.180",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-02-04T15:47:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "212ddbab41c42b7798b908d3428790f644b29033",
          "body": null,
          "is_bot": false,
          "headline": "0.0.179",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-02-04T15:45:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9927e66a0113298803d0e297574004f971abab48",
          "body": null,
          "is_bot": false,
          "headline": "feat: implement enum file creation and enhance logging in ApplyAction",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-02-04T15:45:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "503f8f140e043097709f5baa8b8277aaa6edb5f6",
          "body": null,
          "is_bot": false,
          "headline": "0.0.178",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-01-29T03:21:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d9af640792021d464d9b7d3f5cef6447af3fc29f",
          "body": null,
          "is_bot": false,
          "headline": "refactor: remove unnecessary console logs from ApplyAction",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-01-29T03:20:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cb97bf03019de221c5fe877db4792553c7ef93c6",
          "body": "… for relations",
          "is_bot": false,
          "headline": "fix: update module import statements and handle kebab case conversion…",
          "author_name": "Joao Rangel",
          "author_login": "joaohcrangel",
          "committed_at": "2025-01-29T03:20:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2825c3a98af1a2d6d5d1b22e3259e280614d3618",
          "body": null,
          "is_bot": false,
          "headline": "fix: corrigir erro de digitação na propriedade alreadyInstalled",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2025-01-23T12:33:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d585732d1972ffa092ec792d301263c822c8fdc6",
          "body": null,
          "is_bot": false,
          "headline": "0.0.177",
          "author_name": "saulotarsobc",
          "author_login": "saulotarsobc",
          "committed_at": "2025-01-03T22:11:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d43f875d6a86ec96504948db3a732f03bd81d604",
          "body": null,
          "is_bot": false,
          "headline": "debug: this.debug = true;",
          "author_name": "saulotarsobc",
          "author_login": "saulotarsobc",
          "committed_at": "2025-01-03T22:11:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e06ab1b43a74f92589f2e1d4c270efd111437a0f",
          "body": null,
          "is_bot": false,
          "headline": "0.0.176",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2024-12-30T17:38:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9e72eafaabd7b77858b4ff549776e43a997f9ba6",
          "body": null,
          "is_bot": false,
          "headline": "fix: corrigir tratamento de tabelas ao ler arquivos YAML",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2024-12-30T17:37:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0b7a1d06c4de8475942a9a9444e2db4f96f9b666",
          "body": null,
          "is_bot": false,
          "headline": "0.0.175",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2024-12-20T11:32:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "84c673818c1d04bec3457b603d0a7af76c675249",
          "body": null,
          "is_bot": false,
          "headline": "refactor: remover log de depuração na ação de reset",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2024-12-20T11:32:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2bdbd926a554e32ab9b9d15cfd4941b326a8bff1",
          "body": null,
          "is_bot": false,
          "headline": "0.0.174",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2024-12-19T19:17:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0e8d2260330c601dcccb7fb32f962155905e7b6d",
          "body": "…ncluir palavras-chave adicionais",
          "is_bot": false,
          "headline": "feat: aprimorar lógica de exclusão de arquivos de localizações para i…",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2024-12-19T19:17:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e288a5584539e07a1fb4206acc27cfd214bff9df",
          "body": null,
          "is_bot": false,
          "headline": "0.0.173",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2024-12-19T18:41:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1259c556513a1d15ace97a066e38cff5eddc5358",
          "body": "…igir caminho de exclusão de arquivos de localizações",
          "is_bot": false,
          "headline": "feat: adicionar renderização de arquivo de roteador usando EJS e corr…",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2024-12-19T18:41:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d93a2266ab7c6765982d36c5eccfc55c72f422e0",
          "body": "…late de roteador",
          "is_bot": false,
          "headline": "feat: adicionar limpeza de arquivos de localizações e configurar temp…",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2024-12-19T18:32:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ee1b9b5bff2a7a0fd0b6a2561ed81bde42207f2a",
          "body": "Changes:\n- Replace 'fs' imports with 'node:fs'\n- Update 'fs/promises' imports to 'node:fs/promises'\n- Adjust 'path' imports to use 'node:path'\n- Modify 'os' imports to use 'node:os'\n\nSummary: This refactoring improves code consistency by standardizing file system-related imports across the project. Using the 'node:' prefix ensures we're using the built-in Node.js modules and helps prevent potential conflicts with third-party packages.",
          "is_bot": false,
          "headline": "Standardize file system imports to use node:fs",
          "author_name": "saulotarsobc",
          "author_login": "saulotarsobc",
          "committed_at": "2024-12-19T17:33:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bc4d0e712f4480e840bf1b98fdec57b5c684552a",
          "body": null,
          "is_bot": false,
          "headline": "delete .md",
          "author_name": "saulotarsobc",
          "author_login": "saulotarsobc",
          "committed_at": "2024-12-19T17:13:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ef64866f4491bfa3a310a5e1072a37de1b9630c8",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'master' of https://github.com/hed-hog/cli",
          "author_name": "saulotarsobc",
          "author_login": "saulotarsobc",
          "committed_at": "2024-12-19T17:13:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "210fe1f2ce0e87ecf88d4930947b5085bbcd3e2f",
          "body": "• Added keywords to package.json to better describe the project\n• Updated author, license, and description in package.json\n• Added new scripts for generating diff and project overview\n• Included additional files in .gitignore\n• Removed unnecessary comment in add-routes-yaml.ts\n\nThese changes improve\n[…]\ners. The new scripts enhance development workflow by providing easy ways to generate diffs and project overviews. Overall, these updates contribute to better project documentation and maintainability.",
          "is_bot": false,
          "headline": "Update project metadata and add development scripts",
          "author_name": "saulotarsobc",
          "author_login": "saulotarsobc",
          "committed_at": "2024-12-19T17:13:01Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8945044f39dea19fa467c2db3d88fb61438f6a83",
          "body": null,
          "is_bot": false,
          "headline": "refactor: atualizar rota de recuperação de senha para incluir código",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2024-12-19T12:59:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "45f8177f4a7911544c667b169f7455a4c4b901e7",
          "body": null,
          "is_bot": false,
          "headline": "0.0.172",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2024-12-18T18:39:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0fe79ed55306a904cb31ef7af3fa644f9d3d6887",
          "body": "…rros na remoção de diretórios",
          "is_bot": false,
          "headline": "refactor: adicionar novos caminhos de rota e melhorar tratamento de e…",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2024-12-18T18:37:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e5e6aba227feebea594f54315888852f71201d66",
          "body": null,
          "is_bot": false,
          "headline": "0.0.171",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2024-12-18T12:46:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8501141fd5b2467b04e7f23268b248ff6d5bb9fb",
          "body": "…ão do Git",
          "is_bot": false,
          "headline": "refactor: descomentar chamada para remover a pasta .git na configuraç…",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2024-12-18T12:46:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8a87ffc70e65d9187027c0a057bc31d7241e64e1",
          "body": null,
          "is_bot": false,
          "headline": "0.0.170",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2024-12-17T19:37:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bca512eee73ed516c545d4fd4b2dc9c1b189189d",
          "body": "…do Git",
          "is_bot": false,
          "headline": "refactor: comentar chamada para remover a pasta .git na configuração …",
          "author_name": "Gabriel Lima",
          "author_login": "GabrielLima5",
          "committed_at": "2024-12-17T19:37:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f3f6919eff54e0fae57020177a997ec229520ccb",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'master' of https://github.com/hed-hog/cli",
          "author_name": "saulotarsobc",
          "author_login": "saulotarsobc",
          "committed_at": "2024-12-17T18:10:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        }
      ],
      "releases_count": 0,
      "commits_last_year": 0,
      "latest_release_at": null,
      "latest_release_tag": null,
      "releases_from_tags": false,
      "days_since_last_push": 463,
      "active_weeks_last_year": 0,
      "days_since_latest_release": null,
      "mean_days_between_releases": null
    },
    "community": {
      "has_readme": true,
      "has_license": false,
      "has_description": false,
      "has_contributing": false,
      "health_percentage": 25,
      "has_issue_template": false,
      "has_code_of_conduct": false,
      "has_pull_request_template": false
    },
    "ecosystem": {
      "packages": [
        {
          "name": "@hedhog/cli",
          "exists": true,
          "license": "MIT",
          "keywords": [
            "hedhog",
            "cli",
            "command-line interface",
            "typescript",
            "nestjs",
            "developer tools",
            "module management",
            "database migrations",
            "scaffolding",
            "dynamic applications",
            "scalable applications",
            "automation",
            "backend tools",
            "project setup",
            "devops",
            "workflow optimization"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@hedhog/cli",
          "is_deprecated": false,
          "latest_version": "0.0.206",
          "repository_url": "https://github.com/hed-hog/cli",
          "versions_count": 204,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 5,
          "monthly_downloads": 86,
          "first_published_at": "2024-09-11T01:04:11.209000Z",
          "latest_published_at": "2025-04-17T18:43:49.355000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 463
        }
      ]
    },
    "popularity": {
      "forks": 0,
      "stars": 1,
      "watchers": 1,
      "fork_history": {
        "days": [],
        "complete": true,
        "collected": 0,
        "total_forks": 0
      },
      "star_history": null,
      "open_issues_and_prs": 0
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [],
      "has_llms_txt": false,
      "has_dockerfile": false,
      "has_mcp_signal": false,
      "bootstrap_files": [],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [
        "tools/gulp/tsconfig.json",
        "tsconfig.json"
      ],
      "toolchain_manifests": [],
      "largest_source_bytes": 48812,
      "source_files_sampled": 138,
      "oversized_source_files": 0,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [
        "package.json"
      ],
      "advisories": {
        "error": null,
        "scope": "published_package",
        "source": "osv",
        "findings": [
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "2.1.2",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-mh99-v99m-4gvg"
            ],
            "fixed_version": "5.0.8",
            "advisory_count": 1,
            "oldest_advisory_days": 0
          },
          {
            "name": "tmp",
            "direct": false,
            "version": "0.0.33",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-52f5-9888-hmc6",
              "GHSA-ph9p-34f9-6g65"
            ],
            "fixed_version": "0.2.6",
            "advisory_count": 2,
            "oldest_advisory_days": 353
          }
        ],
        "collected": true,
        "malicious": [
          {
            "name": "http",
            "direct": true,
            "version": "0.0.1-security",
            "ecosystem": "npm",
            "advisory_ids": [
              "MAL-2025-22760"
            ],
            "still_published": true,
            "first_reported_at": "2025-08-14T18:52:04Z"
          }
        ],
        "truncated": false,
        "by_severity": {
          "high": 2
        },
        "advisory_count": 3,
        "affected_count": 2,
        "assessed_count": 218,
        "malicious_count": 1,
        "assessed_package": "npm:@hedhog/cli@0.0.206",
        "unassessed_count": 0,
        "direct_affected_count": 0
      },
      "ecosystems": [
        "npm"
      ],
      "dependencies": [
        {
          "name": "@commander-js/extra-typings",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^12.1.0"
        },
        {
          "name": "@types/bcryptjs",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.4.6"
        },
        {
          "name": "bcryptjs",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.4.3"
        },
        {
          "name": "chalk",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "4.1.2"
        },
        {
          "name": "cli-table3",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "0.6.5"
        },
        {
          "name": "commander",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^12.1.0"
        },
        {
          "name": "ejs",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.1.10"
        },
        {
          "name": "http",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.0.1-security"
        },
        {
          "name": "inquirer",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "8.2.6"
        },
        {
          "name": "isomorphic-git",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.27.1"
        },
        {
          "name": "mysql2",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.11.2"
        },
        {
          "name": "node-emoji",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.1.3"
        },
        {
          "name": "openai",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^4.71.0"
        },
        {
          "name": "pg",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^8.12.0"
        },
        {
          "name": "prettier",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.3.3"
        },
        {
          "name": "reflect-metadata",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.2.2"
        },
        {
          "name": "typeorm",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.3.20"
        },
        {
          "name": "typescript",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^5.6.2"
        },
        {
          "name": "yaml",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.6.0"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "@commander-js/extra-typings",
            "direct": true,
            "version": "12.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/bcryptjs",
            "direct": true,
            "version": "2.4.6",
            "ecosystem": "npm"
          },
          {
            "name": "bcryptjs",
            "direct": true,
            "version": "2.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "chalk",
            "direct": true,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "cli-table3",
            "direct": true,
            "version": "0.6.5",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": true,
            "version": "12.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": true,
            "version": "2.20.3",
            "ecosystem": "npm"
          },
          {
            "name": "ejs",
            "direct": true,
            "version": "3.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "http",
            "direct": true,
            "version": "0.0.1-security",
            "ecosystem": "npm"
          },
          {
            "name": "inquirer",
            "direct": true,
            "version": "8.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "isomorphic-git",
            "direct": true,
            "version": "1.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "mysql2",
            "direct": true,
            "version": "3.11.2",
            "ecosystem": "npm"
          },
          {
            "name": "node-emoji",
            "direct": true,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "openai",
            "direct": true,
            "version": "4.71.0",
            "ecosystem": "npm"
          },
          {
            "name": "pg",
            "direct": true,
            "version": "8.12.0",
            "ecosystem": "npm"
          },
          {
            "name": "prettier",
            "direct": true,
            "version": "3.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "reflect-metadata",
            "direct": true,
            "version": "0.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "typeorm",
            "direct": true,
            "version": "0.3.20",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": true,
            "version": "5.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "yaml",
            "direct": true,
            "version": "2.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "@colors/colors",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "@cspotcode/source-map-support",
            "direct": false,
            "version": "0.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "@gulpjs/messages",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@gulpjs/to-absolute-glob",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@hedhog/utils",
            "direct": false,
            "version": "0.0.19",
            "ecosystem": "npm"
          },
          {
            "name": "@isaacs/cliui",
            "direct": false,
            "version": "8.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/gen-mapping",
            "direct": false,
            "version": "0.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/resolve-uri",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/set-array",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/source-map",
            "direct": false,
            "version": "0.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/sourcemap-codec",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/trace-mapping",
            "direct": false,
            "version": "0.3.25",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/trace-mapping",
            "direct": false,
            "version": "0.3.9",
            "ecosystem": "npm"
          },
          {
            "name": "@pkgjs/parseargs",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "npm"
          },
          {
            "name": "@sindresorhus/is",
            "direct": false,
            "version": "4.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "@sqltools/formatter",
            "direct": false,
            "version": "1.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "@tsconfig/node10",
            "direct": false,
            "version": "1.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "@tsconfig/node12",
            "direct": false,
            "version": "1.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "@tsconfig/node14",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@tsconfig/node16",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/ejs",
            "direct": false,
            "version": "3.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/expect",
            "direct": false,
            "version": "1.20.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/glob-stream",
            "direct": false,
            "version": "8.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/gulp",
            "direct": false,
            "version": "4.0.17",
            "ecosystem": "npm"
          },
          {
            "name": "@types/inquirer",
            "direct": false,
            "version": "9.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/json-schema",
            "direct": false,
            "version": "7.0.15",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "18.19.64",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "22.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node-emoji",
            "direct": false,
            "version": "1.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node-fetch",
            "direct": false,
            "version": "2.6.11",
            "ecosystem": "npm"
          },
          {
            "name": "@types/pg",
            "direct": false,
            "version": "8.11.9",
            "ecosystem": "npm"
          },
          {
            "name": "@types/picomatch",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/streamx",
            "direct": false,
            "version": "2.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/through",
            "direct": false,
            "version": "0.0.33",
            "ecosystem": "npm"
          },
          {
            "name": "@types/undertaker",
            "direct": false,
            "version": "1.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "@types/undertaker-registry",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/vinyl",
            "direct": false,
            "version": "2.0.12",
            "ecosystem": "npm"
          },
          {
            "name": "@types/vinyl-fs",
            "direct": false,
            "version": "3.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/ast",
            "direct": false,
            "version": "1.12.1",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/floating-point-hex-parser",
            "direct": false,
            "version": "1.11.6",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/helper-api-error",
            "direct": false,
            "version": "1.11.6",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/helper-buffer",
            "direct": false,
            "version": "1.12.1",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/helper-numbers",
            "direct": false,
            "version": "1.11.6",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/helper-wasm-bytecode",
            "direct": false,
            "version": "1.11.6",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/helper-wasm-section",
            "direct": false,
            "version": "1.12.1",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/ieee754",
            "direct": false,
            "version": "1.11.6",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/leb128",
            "direct": false,
            "version": "1.11.6",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/utf8",
            "direct": false,
            "version": "1.11.6",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/wasm-edit",
            "direct": false,
            "version": "1.12.1",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/wasm-gen",
            "direct": false,
            "version": "1.12.1",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/wasm-opt",
            "direct": false,
            "version": "1.12.1",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/wasm-parser",
            "direct": false,
            "version": "1.12.1",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/wast-printer",
            "direct": false,
            "version": "1.12.1",
            "ecosystem": "npm"
          },
          {
            "name": "@xtuc/ieee754",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@xtuc/long",
            "direct": false,
            "version": "4.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "abort-controller",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": false,
            "version": "8.14.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-import-attributes",
            "direct": false,
            "version": "1.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-walk",
            "direct": false,
            "version": "8.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "agentkeepalive",
            "direct": false,
            "version": "4.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "6.12.6",
            "ecosystem": "npm"
          },
          {
            "name": "ajv-keywords",
            "direct": false,
            "version": "3.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-colors",
            "direct": false,
            "version": "4.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-cyan",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-escapes",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-gray",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-red",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-regex",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-regex",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-styles",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-styles",
            "direct": false,
            "version": "6.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-wrap",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "any-promise",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "anymatch",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "app-root-path",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "arg",
            "direct": false,
            "version": "4.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "arr-diff",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "arr-flatten",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "arr-union",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "array-each",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "array-slice",
            "direct": false,
            "version": "0.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "array-slice",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "async",
            "direct": false,
            "version": "3.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "async-done",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "async-done",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "async-lock",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "async-settle",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "asynckit",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "aws-ssl-profiles",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "b4a",
            "direct": false,
            "version": "1.6.6",
            "ecosystem": "npm"
          },
          {
            "name": "bach",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "balanced-match",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "bare-events",
            "direct": false,
            "version": "2.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "base64-js",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "binary-extensions",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "bl",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "bl",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "1.1.11",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "braces",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "browserslist",
            "direct": false,
            "version": "4.23.3",
            "ecosystem": "npm"
          },
          {
            "name": "buffer",
            "direct": false,
            "version": "5.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "buffer",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "buffer-from",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "caniuse-lite",
            "direct": false,
            "version": "1.0.30001660",
            "ecosystem": "npm"
          },
          {
            "name": "char-regex",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "chardet",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "chokidar",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "chrome-trace-event",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "clean-git-ref",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "cli-cursor",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "cli-highlight",
            "direct": false,
            "version": "2.1.11",
            "ecosystem": "npm"
          },
          {
            "name": "cli-spinners",
            "direct": false,
            "version": "2.9.2",
            "ecosystem": "npm"
          },
          {
            "name": "cli-width",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "cliui",
            "direct": false,
            "version": "7.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "cliui",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "clone",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "clone",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "clone-buffer",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "clone-stats",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "cloneable-readable",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "color-convert",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "color-name",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "color-support",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "combined-stream",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "concat-map",
            "direct": false,
            "version": "0.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "concurrently",
            "direct": false,
            "version": "9.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "convert-source-map",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "copy-props",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "core-util-is",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "crc-32",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "create-require",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "cross-spawn",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "dayjs",
            "direct": false,
            "version": "1.11.13",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "4.3.7",
            "ecosystem": "npm"
          },
          {
            "name": "decompress-response",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "defaults",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "delayed-stream",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "delete-empty",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "denque",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "detect-file",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "diff",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "diff3",
            "direct": false,
            "version": "0.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "dotenv",
            "direct": false,
            "version": "16.4.5",
            "ecosystem": "npm"
          },
          {
            "name": "each-props",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "eastasianwidth",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "electron-to-chromium",
            "direct": false,
            "version": "1.5.18",
            "ecosystem": "npm"
          },
          {
            "name": "emoji-regex",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "emoji-regex",
            "direct": false,
            "version": "9.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "emojilib",
            "direct": false,
            "version": "2.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "end-of-stream",
            "direct": false,
            "version": "1.4.4",
            "ecosystem": "npm"
          },
          {
            "name": "enhanced-resolve",
            "direct": false,
            "version": "5.17.1",
            "ecosystem": "npm"
          },
          {
            "name": "es-module-lexer",
            "direct": false,
            "version": "1.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "escalade",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "escape-string-regexp",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-scope",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "esrecurse",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "estraverse",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "estraverse",
            "direct": false,
            "version": "5.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "event-target-shim",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "events",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "expand-tilde",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "extend",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "extend-shallow",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "external-editor",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fancy-log",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-deep-equal",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-fifo",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "fast-json-stable-stringify",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fast-levenshtein",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fastest-levenshtein",
            "direct": false,
            "version": "1.0.16",
            "ecosystem": "npm"
          },
          {
            "name": "fastq",
            "direct": false,
            "version": "1.17.1",
            "ecosystem": "npm"
          },
          {
            "name": "figures",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "filelist",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "fill-range",
            "direct": false,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "findup-sync",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fined",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "flagged-respawn",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "for-in",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "for-own",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "foreground-child",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "form-data",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "form-data-encoder",
            "direct": false,
            "version": "1.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "formdata-node",
            "direct": false,
            "version": "4.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "fs-mkdirp-stream",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "fs.realpath",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "function-bind",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "generate-function",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "get-caller-file",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "10.4.5",
            "ecosystem": "npm"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "7.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "glob-parent",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "glob-parent",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "glob-stream",
            "direct": false,
            "version": "8.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "glob-to-regexp",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "glob-watcher",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "global-modules",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "global-prefix",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "glogg",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "graceful-fs",
            "direct": false,
            "version": "4.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "gulp",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "gulp-clean",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "gulp-cli",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "gulplog",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-flag",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hasown",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "highlight.js",
            "direct": false,
            "version": "10.7.3",
            "ecosystem": "npm"
          },
          {
            "name": "homedir-polyfill",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "humanize-ms",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-lite",
            "direct": false,
            "version": "0.4.24",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-lite",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "npm"
          },
          {
            "name": "ieee754",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "inflight",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "inherits",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "ini",
            "direct": false,
            "version": "1.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "interpret",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-absolute",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-binary-path",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-core-module",
            "direct": false,
            "version": "2.15.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-extglob",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-fullwidth-code-point",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-glob",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-interactive",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-negated-glob",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-number",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-plain-object",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-property",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "is-relative",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-unc-path",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-unicode-supported",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-valid-glob",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-windows",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "isarray",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "isexe",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "isobject",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "jackspeak",
            "direct": false,
            "version": "3.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "jake",
            "direct": false,
            "version": "10.9.2",
            "ecosystem": "npm"
          },
          {
            "name": "jest-worker",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-parse-even-better-errors",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-schema-traverse",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "json5",
            "direct": false,
            "version": "2.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "kind-of",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "last-run",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "lead",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "liftoff",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "loader-runner",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash",
            "direct": false,
            "version": "4.17.21",
            "ecosystem": "npm"
          },
          {
            "name": "log-symbols",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "long",
            "direct": false,
            "version": "5.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "10.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "7.18.3",
            "ecosystem": "npm"
          },
          {
            "name": "lru.min",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "make-error",
            "direct": false,
            "version": "1.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "map-cache",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "merge-stream",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromatch",
            "direct": false,
            "version": "4.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "mime-db",
            "direct": false,
            "version": "1.52.0",
            "ecosystem": "npm"
          },
          {
            "name": "mime-types",
            "direct": false,
            "version": "2.1.35",
            "ecosystem": "npm"
          },
          {
            "name": "mimic-fn",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mimic-response",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "5.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "9.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "minimist",
            "direct": false,
            "version": "1.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "minimisted",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "minipass",
            "direct": false,
            "version": "7.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "mkdirp",
            "direct": false,
            "version": "2.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "mute-stdout",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mute-stream",
            "direct": false,
            "version": "0.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "mz",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "named-placeholders",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "neo-async",
            "direct": false,
            "version": "2.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "node-domexception",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-fetch",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-releases",
            "direct": false,
            "version": "2.0.18",
            "ecosystem": "npm"
          },
          {
            "name": "normalize-path",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "now-and-later",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "object-assign",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "object.defaults",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "object.pick",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "obuf",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "once",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "onetime",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "ora",
            "direct": false,
            "version": "5.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "os-tmpdir",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "package-json-from-dist",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "pako",
            "direct": false,
            "version": "1.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "parse-filepath",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "parse-node-version",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "parse-passwd",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "parse5",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "parse5",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "parse5-htmlparser2-tree-adapter",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-is-absolute",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-key",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-parse",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "path-root",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-root-regex",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "path-scurry",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-starts-with",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "pg-cloudflare",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "pg-connection-string",
            "direct": false,
            "version": "2.6.4",
            "ecosystem": "npm"
          },
          {
            "name": "pg-int8",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "pg-numeric",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "pg-pool",
            "direct": false,
            "version": "3.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "pg-protocol",
            "direct": false,
            "version": "1.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "pg-types",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "pg-types",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "pgpass",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "picocolors",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "pify",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "plugin-error",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "postgres-array",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "postgres-array",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "postgres-bytea",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "postgres-bytea",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "postgres-date",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "postgres-date",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postgres-interval",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "postgres-interval",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "postgres-range",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "process-nextick-args",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "punycode",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "queue-tick",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "randombytes",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "readable-stream",
            "direct": false,
            "version": "2.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "readable-stream",
            "direct": false,
            "version": "3.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "readdirp",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "rechoir",
            "direct": false,
            "version": "0.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "remove-trailing-separator",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "replace-ext",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "replace-ext",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "replace-homedir",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "require-directory",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "resolve",
            "direct": false,
            "version": "1.22.8",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-dir",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-options",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "restore-cursor",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "reusify",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "rimraf",
            "direct": false,
            "version": "2.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "run-async",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "rxjs",
            "direct": false,
            "version": "7.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "safe-buffer",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "safe-buffer",
            "direct": false,
            "version": "5.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "safer-buffer",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "schema-utils",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "6.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.6.3",
            "ecosystem": "npm"
          },
          {
            "name": "semver-greatest-satisfied-range",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "seq-queue",
            "direct": false,
            "version": "0.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "serialize-javascript",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "sh",
            "direct": false,
            "version": "0.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "sha.js",
            "direct": false,
            "version": "2.4.11",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-command",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-regex",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "shell-quote",
            "direct": false,
            "version": "1.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "signal-exit",
            "direct": false,
            "version": "3.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "signal-exit",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "simple-concat",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "simple-get",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "skin-tone",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "source-map",
            "direct": false,
            "version": "0.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "source-map",
            "direct": false,
            "version": "0.7.4",
            "ecosystem": "npm"
          },
          {
            "name": "source-map-support",
            "direct": false,
            "version": "0.5.21",
            "ecosystem": "npm"
          },
          {
            "name": "sparkles",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "split2",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "sqlstring",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "stream-composer",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "stream-exhaust",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "streamx",
            "direct": false,
            "version": "2.20.1",
            "ecosystem": "npm"
          },
          {
            "name": "string-width",
            "direct": false,
            "version": "4.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "string-width",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "string_decoder",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "string_decoder",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi",
            "direct": false,
            "version": "7.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-bom",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "supports-color",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "supports-color",
            "direct": false,
            "version": "8.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "supports-preserve-symlinks-flag",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "sver",
            "direct": false,
            "version": "1.8.4",
            "ecosystem": "npm"
          },
          {
            "name": "tapable",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "teex",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "terser",
            "direct": false,
            "version": "5.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "terser-webpack-plugin",
            "direct": false,
            "version": "5.3.10",
            "ecosystem": "npm"
          },
          {
            "name": "text-decoder",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "thenify",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "thenify-all",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "through",
            "direct": false,
            "version": "2.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "through2",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "time-stamp",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "tmp",
            "direct": false,
            "version": "0.0.33",
            "ecosystem": "npm"
          },
          {
            "name": "to-regex-range",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "to-through",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "tr46",
            "direct": false,
            "version": "0.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "tree-kill",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "ts-loader",
            "direct": false,
            "version": "9.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "ts-node",
            "direct": false,
            "version": "10.9.2",
            "ecosystem": "npm"
          },
          {
            "name": "tsconfig-paths",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "tslib",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "type-fest",
            "direct": false,
            "version": "0.21.3",
            "ecosystem": "npm"
          },
          {
            "name": "unc-path-regex",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "undertaker",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "undertaker-registry",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "5.26.5",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "6.19.8",
            "ecosystem": "npm"
          },
          {
            "name": "unicode-emoji-modifier-base",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "update-browserslist-db",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "uri-js",
            "direct": false,
            "version": "4.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "util-deprecate",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "uuid",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "v8-compile-cache-lib",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "v8flags",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "value-or-function",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "vinyl",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "vinyl",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "vinyl-contents",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "vinyl-fs",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "vinyl-sourcemap",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "watchpack",
            "direct": false,
            "version": "2.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "wcwidth",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "web-streams-polyfill",
            "direct": false,
            "version": "4.0.0-beta.3",
            "ecosystem": "npm"
          },
          {
            "name": "webidl-conversions",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "webpack",
            "direct": false,
            "version": "5.94.0",
            "ecosystem": "npm"
          },
          {
            "name": "webpack-sources",
            "direct": false,
            "version": "3.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-url",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi",
            "direct": false,
            "version": "6.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "wrappy",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "xtend",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "y18n",
            "direct": false,
            "version": "5.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "yargs",
            "direct": false,
            "version": "16.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "yargs",
            "direct": false,
            "version": "17.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "yargs-parser",
            "direct": false,
            "version": "20.2.9",
            "ecosystem": "npm"
          },
          {
            "name": "yargs-parser",
            "direct": false,
            "version": "21.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "yn",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 464,
        "direct_count": 20,
        "indirect_count": 444
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 0,
        "merged_prs": 0,
        "open_issues": 0,
        "closed_ratio": null,
        "closed_issues": 0,
        "closed_unmerged_prs": 0
      },
      "bus_factor": 1,
      "bot_contributors": 0,
      "top_contributors": [
        {
          "type": "User",
          "login": "joaohcrangel",
          "commits": 360,
          "avatar_url": "https://avatars.githubusercontent.com/u/334599?v=4"
        },
        {
          "type": "User",
          "login": "GabrielLima5",
          "commits": 289,
          "avatar_url": "https://avatars.githubusercontent.com/u/121446890?v=4"
        },
        {
          "type": "User",
          "login": "saulotarsobc",
          "commits": 34,
          "avatar_url": "https://avatars.githubusercontent.com/u/23584038?v=4"
        }
      ],
      "contributors_sampled": 3,
      "top_contributor_share": 0.527
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": false,
      "ci_workflows": [
        "publish.yaml"
      ],
      "has_docs_dir": false,
      "linter_configs": [],
      "has_editorconfig": false,
      "has_linter_config": false,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [
        "package-lock.json"
      ],
      "scorecard": {
        "checks": [
          {
            "name": "Binary-Artifacts",
            "score": 10,
            "reason": "no binaries found in the repo",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
          },
          {
            "name": "Branch-Protection",
            "score": 0,
            "reason": "branch protection not enabled on development/release branches",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": null,
            "reason": "no pull request found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
          },
          {
            "name": "CII-Best-Practices",
            "score": 0,
            "reason": "no effort to earn an OpenSSF best practices badge detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
          },
          {
            "name": "Code-Review",
            "score": 0,
            "reason": "Found 0/30 approved changesets -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 10,
            "reason": "project has 3 contributing companies or organizations -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": 10,
            "reason": "no dangerous workflow patterns detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 0,
            "reason": "no update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 0,
            "reason": "project is not fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 0,
            "reason": "license file not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 0,
            "reason": "0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
          },
          {
            "name": "Packaging",
            "score": null,
            "reason": "packaging workflow not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": 0,
            "reason": "dependency not pinned by hash detected -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 0,
            "reason": "no SAST tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 0,
            "reason": "security policy file not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": null,
            "reason": "no releases found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
          },
          {
            "name": "Token-Permissions",
            "score": 0,
            "reason": "detected GitHub workflow tokens with excessive permissions",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
          },
          {
            "name": "Vulnerabilities",
            "score": 0,
            "reason": "31 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "9a3ed523a003229974c3163b5ba6484ac765f975",
        "ran_at": "2026-07-25T18:05:11Z",
        "aggregate_score": 2.2,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": false,
      "has_security_policy": false,
      "has_dependabot_config": false
    },
    "contribution_flow": {
      "collected": true,
      "ci_last_run_at": null,
      "oldest_open_prs": [],
      "last_merged_pr_at": null,
      "ci_last_conclusion": null,
      "oldest_open_issues": []
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/hed-hog/cli",
    "host": "github.com",
    "name": "cli",
    "owner": "hed-hog"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "critical",
      "name": "Overall health",
      "note": "A dependency reported as a malicious package applies a 35% multiplier to weighted overall health and gives it a Critical ceiling of 29.",
      "notes": [
        {
          "code": "malicious_overall_adjustment",
          "params": {
            "cap": 29,
            "pct": 35
          }
        }
      ],
      "value": 8,
      "inputs": {
        "security": 22,
        "vitality": 1,
        "community": 17,
        "governance": 37,
        "engineering": 34,
        "malicious_dependency_cap": 29,
        "malicious_dependency_multiplier": 35,
        "weighted_overall_before_malicious": 22
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "critical",
        "name": "Vitality",
        "value": 1,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "critical",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 1,
            "inputs": {
              "commits_last_year": 0,
              "human_commit_share": 1,
              "days_since_last_push": 463,
              "active_weeks_last_year": 0
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 463 days ago",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 463
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "0/52 weeks with commits",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 0
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "0 commits in the last year",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 0
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "critical",
            "name": "Release discipline",
            "note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "openssf_scorecard_signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 1,
            "inputs": {
              "releases_count": 0
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "no releases published",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_releases_published",
                    "params": {}
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "no releases",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_releases",
                    "params": {}
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "no releases",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_releases",
                    "params": {}
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "excellent",
            "name": "Abandonment",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "cap": null,
              "state": "dormant",
              "guards": [
                "no_open_demand"
              ],
              "signals": [
                "scorecard_unmaintained"
              ],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": null,
              "unanswered_open_prs": 0,
              "unanswered_open_issues": 0,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": 463,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "no human commit for 463 days, with nothing left unanswered; held at dormant by nothing open to answer",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_quiet",
                    "params": {
                      "days": 463
                    }
                  },
                  {
                    "code": "abandonment_guarded",
                    "params": {
                      "guards": "nothing open to answer"
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "critical",
        "name": "Community & Adoption",
        "value": 17,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "critical",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 1,
            "inputs": {
              "forks": 0,
              "stars": 1,
              "watchers": 1,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "1 stars",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "0 forks",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 0
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "1 watchers",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "critical",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 25,
            "inputs": {
              "has_readme": true,
              "has_license": false,
              "has_contributing": false,
              "has_issue_template": false,
              "has_code_of_conduct": false,
              "has_pull_request_template": false
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "no license file detected",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "license_absent",
                    "params": {}
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 18
              },
              {
                "key": "code_of_conduct",
                "name": "Code of conduct",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 13.5
              },
              {
                "key": "issue_template",
                "name": "Issue template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.2
              },
              {
                "key": "pr_template",
                "name": "PR template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.3
              }
            ]
          },
          {
            "key": "ecosystem_adoption",
            "band": "at_risk",
            "name": "Ecosystem adoption (downloads)",
            "note": "Excluded from scoring (no data or not applicable): Registry dependents. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "registry_dependents"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 32,
            "inputs": {
              "packages": [
                "@hedhog/cli"
              ],
              "dependents": null,
              "ecosystems": "npm",
              "total_downloads": null,
              "monthly_downloads": 86
            },
            "components": [
              {
                "key": "monthly_downloads",
                "name": "Monthly downloads",
                "detail": "86 downloads/month across npm",
                "points": 25.9,
                "status": "partial",
                "details": [
                  {
                    "code": "downloads_monthly",
                    "params": {
                      "count": 86,
                      "ecosystems": "npm"
                    }
                  }
                ],
                "max_points": 80
              },
              {
                "key": "registry_dependents",
                "name": "Registry dependents",
                "detail": "not reported by this ecosystem",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "not_reported_by_this_ecosystem",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "at_risk",
        "name": "Sustainability & Governance",
        "value": 37,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "at_risk",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 34,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 3,
              "top_contributor_share": 0.527
            },
            "components": [
              {
                "key": "bus_factor",
                "name": "Bus factor",
                "detail": "1 contributor(s) cover half of all commits",
                "points": 9,
                "status": "partial",
                "details": [
                  {
                    "code": "bus_factor",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 54
              },
              {
                "key": "commit_distribution",
                "name": "Commit distribution",
                "detail": "top contributor authored 53% of commits",
                "points": 10.6,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 53
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "3 contributors",
                "points": 4.1,
                "status": "partial",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 3
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 3 contributing companies or organizations -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "critical",
            "name": "Issue & PR responsiveness",
            "note": "Excluded from scoring (no data or not applicable): Issue resolution, PR acceptance. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "issue_resolution",
                    "pr_acceptance"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 1,
            "inputs": {
              "merged_prs": 0,
              "open_issues": 0,
              "closed_issues": 0,
              "issue_closed_ratio": null,
              "closed_unmerged_prs": 0
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "no issues or no data",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_issues_or_data",
                    "params": {}
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "no decided pull requests or no data",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_decided_prs_or_data",
                    "params": {}
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 0/30 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "at_risk",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 43,
            "inputs": {
              "followers": 1,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "hed-hog",
              "public_repos": 7,
              "account_age_days": 719
            },
            "components": [
              {
                "key": "ownership_backing",
                "name": "Ownership backing",
                "detail": "organization-owned",
                "points": 30,
                "status": "met",
                "details": [
                  {
                    "code": "owner_organization",
                    "params": {}
                  }
                ],
                "max_points": 30
              },
              {
                "key": "verified_domain",
                "name": "Verified domain",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "owner_reach",
                "name": "Owner reach",
                "detail": "1 followers of hed-hog",
                "points": 2.2,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 1,
                      "login": "hed-hog"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "7 public repos, account ~1 yr old",
                "points": 10.5,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 7
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 1
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "good",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 79,
            "inputs": {
              "packages": [
                "@hedhog/cli"
              ],
              "ecosystems": "npm",
              "any_deprecated": false,
              "min_days_since_publish": 463
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "1 package(s) on npm",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 1,
                      "ecosystems": "npm"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 463 days ago",
                "points": 14,
                "status": "partial",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 463
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "204 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 204
                    }
                  }
                ],
                "max_points": 20
              },
              {
                "key": "not_deprecated",
                "name": "Not deprecated",
                "detail": "active, not deprecated or yanked",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "package_not_deprecated",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "at_risk",
        "name": "Engineering Quality",
        "value": 34,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "at_risk",
            "name": "Engineering practices",
            "note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: CI-Tests. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "openssf_scorecard_ci_tests"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 30,
            "inputs": {
              "has_ci": true,
              "has_tests": false,
              "has_editorconfig": false,
              "has_linter_config": false,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "1 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 24
              },
              {
                "key": "tests_present",
                "name": "Tests present",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 24
              },
              {
                "key": "linter_config",
                "name": "Linter config",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 9.6
              },
              {
                "key": "editorconfig",
                "name": ".editorconfig",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "no pull request found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "at_risk",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "topics": [],
              "has_wiki": true,
              "homepage": null,
              "has_readme": true,
              "has_docs_dir": false,
              "has_description": false
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 30,
                "status": "met",
                "details": [],
                "max_points": 30
              },
              {
                "key": "documentation_directory",
                "name": "Documentation directory",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 25
              },
              {
                "key": "documentation_homepage_site",
                "name": "Documentation / homepage site",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "repository_description",
                "name": "Repository description",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              },
              {
                "key": "topics",
                "name": "Topics",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "critical",
        "name": "Security",
        "value": 22,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "critical",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): CI-Tests, Packaging, Signed-Releases. Remaining weights renormalized. A dependency reported as a malicious package applies a 35% multiplier to Security posture and gives it a Critical ceiling of 29.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "ci_tests",
                    "packaging",
                    "signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              },
              {
                "code": "malicious_posture_adjustment",
                "params": {
                  "cap": 29,
                  "pct": 35
                }
              }
            ],
            "value": 8,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 15,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 3,
              "scorecard_aggregate": 2.2,
              "malicious_dependency_cap": 29,
              "malicious_dependency_multiplier": 35,
              "security_posture_before_malicious": 22
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "no binaries found in the repo",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "branch_protection",
                "name": "Branch-Protection",
                "detail": "branch protection not enabled on development/release branches",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "no pull request found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 2.5
              },
              {
                "key": "cii_best_practices",
                "name": "CII-Best-Practices",
                "detail": "no effort to earn an OpenSSF best practices badge detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "code_review",
                "name": "Code-Review",
                "detail": "Found 0/30 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 3 contributing companies or organizations -- score normalized to 10",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no dangerous workflow patterns detected",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "no update tool detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is not fuzzed",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file not detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "packaging",
                "name": "Packaging",
                "detail": "packaging workflow not detected",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "no SAST tool detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file not detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 7.5
              },
              {
                "key": "token_permissions",
                "name": "Token-Permissions",
                "detail": "detected GitHub workflow tokens with excessive permissions",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "31 existing vulnerabilities detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "dependency_advisories",
            "band": "good",
            "name": "Dependency advisories",
            "note": "Matched the npm:@hedhog/cli@0.0.206 runtime dependency closure — what installing the published package pulls in — 218 packages. Reachability is not analyzed.",
            "notes": [
              {
                "code": "advisories_scope_published",
                "params": {
                  "package": "npm:@hedhog/cli@0.0.206",
                  "assessed": 218
                }
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 77,
            "inputs": {
              "source": "osv",
              "advisories": 3,
              "affected_packages": 2,
              "assessed_packages": 218,
              "unassessed_packages": 0,
              "affected_by_severity": "high 2",
              "direct_affected_packages": 0
            },
            "components": [
              {
                "key": "direct_dependencies_free_of_known_advisories",
                "name": "Direct dependencies free of known advisories",
                "detail": "no direct dependency carries a known advisory",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "no_direct_advisories",
                    "params": {}
                  }
                ],
                "max_points": 35
              },
              {
                "key": "indirect_dependencies_free_of_known_advisories",
                "name": "Indirect dependencies free of known advisories",
                "detail": "2 affected: brace-expansion 2.1.2 (high 7.5), tmp 0.0.33 (high 7.5)",
                "points": 8.4,
                "status": "partial",
                "details": [
                  {
                    "code": "advisories_affected",
                    "params": {
                      "count": 2,
                      "packages": "brace-expansion 2.1.2 (high 7.5), tmp 0.0.33 (high 7.5)"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "no_advisories_left_outstanding",
                "name": "No advisories left outstanding",
                "detail": "1 advisory-carrying package(s) unaddressed past 90 days; oldest published 353 days ago",
                "points": 33.7,
                "status": "partial",
                "details": [
                  {
                    "code": "advisories_stale",
                    "params": {
                      "days": 90,
                      "count": 1,
                      "oldest": 353
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "malicious_dependencies",
            "band": "at_risk",
            "name": "Malicious dependencies",
            "note": "1 resolved dependency(ies) resolve to a version the registry still serves and the OpenSSF corpus reports as malicious. Direct and indirect are treated alike: an install-time payload runs at any depth in the graph. A report here concerns the package as published, not the maintainers of this repository, which may have resolved it unknowingly.",
            "notes": [
              {
                "code": "malicious_dependency_limits",
                "params": {
                  "count": 1
                }
              }
            ],
            "value": 35,
            "inputs": {
              "source": "osv",
              "meaning": "reported as a malicious package by the OpenSSF corpus; the remedy is removal or moving off the compromised name, never an upgrade of the same artifact. Versions the registry has since pulled are listed but not scored",
              "packages": [
                {
                  "name": "http",
                  "direct": true,
                  "version": "0.0.1-security",
                  "ecosystem": "npm",
                  "advisory_ids": [
                    "MAL-2025-22760"
                  ],
                  "still_published": true
                }
              ],
              "red_flag": true,
              "assessed_packages": 218,
              "malicious_packages": 1,
              "direct_malicious_packages": 1,
              "withdrawn_malicious_packages": 0,
              "installable_malicious_packages": 1
            },
            "components": [
              {
                "key": "no_dependency_reported_as_a_malicious_package",
                "name": "No dependency reported as a malicious package",
                "detail": "1 reported as malicious: http 0.0.1-security",
                "points": 35,
                "status": "partial",
                "details": [
                  {
                    "code": "malicious_dependencies",
                    "params": {
                      "count": 1,
                      "packages": "http 0.0.1-security"
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          },
          {
            "key": "high_risk_jurisdiction_exposure",
            "band": "excellent",
            "name": "High-Risk Jurisdiction Exposure",
            "note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
            "notes": [
              {
                "code": "jurisdiction_evidence_limits",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "meaning": "self-published location evidence; not nationality or citizenship",
              "red_flag": false,
              "exposures": [],
              "policy_countries": [
                "Russia",
                "Iran",
                "North Korea"
              ],
              "review_only_matches": 0,
              "assessed_self_published_locations": 6
            },
            "components": [
              {
                "key": "policy_exposure_multiplier",
                "name": "Policy exposure multiplier",
                "detail": "no confirmed policy-scope location match",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "jurisdiction_no_match",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "at_risk",
        "name": "AI Readiness",
        "value": 38,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "critical",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 29,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 0.54,
              "agent_instruction_files": [],
              "agent_instruction_max_bytes": null
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": "no CLAUDE.md / AGENTS.md / editor rules",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_instructions",
                    "params": {}
                  }
                ],
                "max_points": 45
              },
              {
                "key": "machine_readable_docs_llms_txt",
                "name": "Machine-readable docs (llms.txt)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "legible_commit_history",
                "name": "Legible commit history",
                "detail": "54 of 100 human commits state their intent (structured subject or explanatory body)",
                "points": 28.8,
                "status": "partial",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 54,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "critical",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 21,
            "inputs": {
              "has_nix": false,
              "has_tests": false,
              "lockfiles": [
                "package-lock.json"
              ],
              "has_dockerfile": false,
              "typed_language": true,
              "bootstrap_files": [],
              "has_devcontainer": false,
              "has_linter_config": false,
              "typecheck_configs": [
                "tools/gulp/tsconfig.json",
                "tsconfig.json"
              ],
              "agent_commit_share": 0,
              "toolchain_manifests": [],
              "dependency_bot_commit_share": 0
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 18
              },
              {
                "key": "automated_tests",
                "name": "Automated tests",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 22
              },
              {
                "key": "lint_format_config",
                "name": "Lint / format config",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "tools/gulp/tsconfig.json, tsconfig.json",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "tools/gulp/tsconfig.json, tsconfig.json"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": "lockfile",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "lockfile"
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "demonstrated_agent_practice",
                "name": "Demonstrated agent practice",
                "detail": "no agent-authored commits among the last 100",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_authored_commits",
                    "params": {
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "no automated dependency updates observed",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_dependency_automation",
                    "params": {}
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "excellent",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "primary_language": "TypeScript",
              "largest_source_bytes": 48812,
              "source_files_sampled": 138,
              "oversized_source_files": 0
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "TypeScript (statically typed)",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "TypeScript"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "0/138 source files over 60KB",
                "points": 55,
                "status": "met",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 138,
                      "oversized": 0
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.13.0"
  },
  "warnings": [
    "Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-25T18:05:16.571352Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/h/hed-hog/cli.svg",
  "full_name": "hed-hog/cli",
  "license_state": "absent",
  "license_spdx": null
}

Scores are signals, not warranties. They reflect publicly visible practices on GitHub — not a code audit, and not a security guarantee.

Missing data is excluded and weights renormalized, never scored as zero. Methodology is versioned and open: metrics v1.13.0, schema v0.27.0 — full methodology · metrics wiki.

How one result sits in the wider record: aggregate statisticsnpm.