registry  /  @phake/lanework  /  0.3.5

@phake/lanework@0.3.5

Run the lanework Kanban board locally against any repo's .agents/reviews folder — no Cloudflare, no auth, no network.

Static Scan Results

scanned 3h ago · by rust-scanner

Static analysis flagged 16 finding(s) at 72.0% confidence. This version is warn-only unless an AI or security-team review confirms malicious behavior.

Static reason
One or more suspicious static signals were detected.

Decision evidence

public snapshot
Behavioral surface
Source
ChildProcessCryptoDynamicRequireEnvironmentVarsFilesystemNativeBindingsNetworkShell
Supply chain
HighEntropyStringsMinifiedObfuscatedUrlStrings
ManifestNo manifest risk signals triggered.
scanned 376 file(s), 12.0 MB of source, external domains: 127.0.0.1, access.line.me, accounts.google.com, accounts.spotify.com, api-m.paypal.com, api-m.sandbox.paypal.com, api.atlassian.com, api.dropboxapi.com, api.figma.com, api.github.com, api.kick.com, api.line.me, api.linear.app, api.linkedin.com, api.notion.com, api.paypal.com, api.polar.sh, api.sandbox.paypal.com, api.spotify.com, api.vercel.com, api.weixin.qq.com, api.x.com, api.zoom.us, apis.roblox.com, appleid.apple.com, auth.atlassian.com, backboard.railway.com, base-ui.com, better-auth.com, cdn.discordapp.com, cdn.jsdelivr.net, developers.cloudflare.com, discord.com, example.com, github.com, gitlab.com, graph.facebook.com, graph.microsoft.com, huggingface.co, id.kick.com, id.twitch.tv, id.vk.com, idp.paybin.io, kapi.kakao.com, kauth.kakao.com, lanework.dev, limited.facebook.com, linear.app, login.microsoftonline.com, login.salesforce.com

Source & flagged code

7 flagged · loading source
mcp.mjsView file
12import { z } from "zod"; L13: import { spawn } from "node:child_process"; L14: import { fileURLToPath } from "node:url";
High
Child Process

Package source references child process execution.

mcp.mjsView on unpkg · L12
32updateLocalReviewMeta, L33: } = await import(libUrl); L34:
Medium
Dynamic Require

Package source references dynamic require/import behavior.

mcp.mjsView on unpkg · L32
dist-local/server/assets/local-fs-BI9bp5tM.jsView file
8function localRoot() { L9: return process.env.LANEWORK_DIR || process.cwd(); L10: } ... L143: date, L144: body: input.body L145: })); ... L228: try { L229: rec = JSON.parse(line); L230: } catch {
Low
Weak Crypto

Package source references weak cryptographic algorithms.

dist-local/server/assets/local-fs-BI9bp5tM.jsView on unpkg · L8
dist-local/server/assets/auth-CzR4eyV3.jsView file
401/** L402: * @private L403: * ... L1321: }, L1322: cloneWithFetch(selectNode, fetch) { L1323: return freeze({ ... L4352: DropTableNode: this.transformDropTable.bind(this), L4353: DataTypeNode: this.transformDataType.bind(this), L4354: OrderByNode: this.transformOrderBy.bind(this), ... L14789: var CI_ENVS_MAP = new Map(Object.entries({ L14790: APPVEYOR: COLORS_256, L14791: BUILDKITE: COLORS_256,
High
Cloud Metadata Access

Source reaches cloud instance metadata or link-local credential endpoints.

dist-local/server/assets/auth-CzR4eyV3.jsView on unpkg · L401
14669patternName = generic_password severity = medium line = 14669 matchedText = * ...rd',
Medium
Secret Pattern

Hardcoded password in dist-local/server/assets/auth-CzR4eyV3.js

dist-local/server/assets/auth-CzR4eyV3.jsView on unpkg · L14669
cli.mjsView file
15Cross-file remote execution chain: cli.mjs spawns dist-local/server/server.js; helper contains network access plus dynamic code execution. L15: import { existsSync } from "node:fs"; L16: import { spawn } from "node:child_process"; L17: import { fileURLToPath } from "node:url"; ... L39: // --- `lanework mcp` subcommand: run as an MCP (stdio) server ------------------ L40: // Must run BEFORE any stdout writes — stdout is the JSON-RPC channel. L41: if (argv[0] === "mcp") { L42: const rest = argv.slice(1); L43: let mcpDir = process.cwd(); L44: for (const a of rest) if (!a.startsWith("-")) mcpDir = resolve(a); ... L76: const cmd = L77: process.platform === "darwin" ? "open" : process.platform === "win32" ? "start" : "xdg-open"; L78: const args = process.platform === "win32" ? ["", url] : [url];
High
Cross File Remote Execution Context

Source spawns a local helper that also contains network and dynamic execution context; review data flow before blocking.

cli.mjsView on unpkg · L15
dist-local/client/assets/geist-mono-vietnamese-wght-normal-D8KDMBhC.woff2View file
path = dist-local/client/assets/geist-mono-vietnamese-wght-normal-D8KDMBhC.woff2 kind = high_entropy_blob sizeBytes = 7716 magicHex = [redacted]
High
Ships High Entropy Blob

Package ships high-entropy non-source blobs.

dist-local/client/assets/geist-mono-vietnamese-wght-normal-D8KDMBhC.woff2View on unpkg

Findings

5 High5 Medium6 Low
HighChild Processmcp.mjs
HighShell
HighCloud Metadata Accessdist-local/server/assets/auth-CzR4eyV3.js
HighCross File Remote Execution Contextcli.mjs
HighShips High Entropy Blobdist-local/client/assets/geist-mono-vietnamese-wght-normal-D8KDMBhC.woff2
MediumDynamic Requiremcp.mjs
MediumNetwork
MediumEnvironment Vars
MediumStructural Risk Force Deep Review
MediumSecret Patterndist-local/server/assets/auth-CzR4eyV3.js
LowScripts Present
LowWeak Cryptodist-local/server/assets/local-fs-BI9bp5tM.js
LowFilesystem
LowObfuscated
LowHigh Entropy Strings
LowUrl Strings