Skills/npm/job-application-agent

job-application-agent@3.8.7

CAUTION· install only

Publisher claims: "JobAppAgent: open-source AI job application agent. Search roles, match them to one verified résumé, apply within your rules on Greenhouse, Ashby and Lever, and track confirmed submissions." Observed in sandbox: no network, touches nothing outside the project, writes no memory.

Registry npm (MCP server)Publisher vaibhavarora14 · publishing for 93 daysInstalls 8,138Last detonated 2d ago

Coverage

Nothing executable in the bundle ran; the trace covers the install step only.
Tested
every file read, file written and host contacted by what ran
Not tested
use of the skill by an agent

Is [email protected] safe to install?

KillerSkills ran it in the KillerSkills honeypot sandbox (1 scenario; nothing executable in the bundle ran; the trace covers the install step only) on 2026-11-12 and scored it 77/100 (Caution). It is not known to be malicious, but it has behaviour or code a security policy should decide on before install. Notable findings: Auto-update or dynamic fetch configuration; Auto-update or dynamic fetch configuration; Auto-update or dynamic fetch configuration. Summary: no network, touches nothing outside the project, writes no memory.

Behavior trace

Honeypot run · 0 s · 1 scenarios · 0 deviations
t+CategoryObserved action
0.0sprocessno install scripts in bundle
0.0sprocessscript backend runs setup only
0.0sprocessscript backend runs setup only
0.0sprocessno install scripts to re-run

Static findings

HIGH
Auto-update or dynamic fetch configurationinstaller/src/installer.mjs:217 · Auto-update or dynamic fetch configuration — agent may load new code at runtimeawait writeConfig(paths.configPath, { ...current, autoUpdateNoticeShown: true });Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
HIGH
Auto-update or dynamic fetch configurationinstaller/src/installer.mjs:185 · Auto-update or dynamic fetch configuration — agent may load new code at runtime...(prior.autoUpdateNoticeShown ? { autoUpdateNoticeShown: true } : {}),Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
HIGH
Auto-update or dynamic fetch configurationinstaller/src/installer.mjs:216 · Auto-update or dynamic fetch configuration — agent may load new code at runtimeif (!current?.installed || current.automaticUpdates !== true || current.autoUpdateNoticeShown === true) return null;Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
MEDIUM
npx invocation of non-well-known packagejob-application-agent/platforms.json:39 · npx invocation of non-well-known package — may execute untrusted code…an unlocked Secret Service and secret-tool for Linux local profiles.", "code": "npx job-application-agent@latest install" }, { "title": "Start a conversation", "text": "Paste the start…Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
MEDIUM
npx invocation of non-well-known packagejob-application-agent/scripts/update-check.mjs:19 · npx invocation of non-well-known package — may execute untrusted codeexport const UPDATE_COMMAND = 'npx job-application-agent@latest update';Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
MEDIUM
npx invocation of non-well-known packagejob-application-agent/SKILL.md:22 · npx invocation of non-well-known package — may execute untrusted code…g an update. ## Managed runtime and the first job A skills-registry install (`npx skills add`), ClawHub, or a copied skill directory does not install the managed runtim…Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
MEDIUM
npx invocation of non-well-known packagejob-application-agent/scripts/managed-runtime.mjs:3 · npx invocation of non-well-known package — may execute untrusted code// `npx job-application-agent@latest install` has written install.json. A managed installFix: Pin versions and sources; vendor anything fetched at install time.
AST06
MEDIUM
npx invocation of non-well-known packagejob-application-agent/platforms.json:26 · npx invocation of non-well-known package — may execute untrusted code…rvice and secret-tool, or the candidate's own private cloud backend.", "code": "npx job-application-agent@latest install" }, { "title": "Start with review", "text": "Paste the setup pr…Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
MEDIUM
File type combined with upload actionjob-application-agent/scripts/telemetry-client.mjs:514 · File type combined with upload action — agent may exfiltrate local data filesif (existing) this.debugLog('upgrade without telemetry.json; sending immediately including install event');Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.
AST07
MEDIUM
npx invocation of non-well-known packagejob-application-agent/scripts/update-check.mjs:20 · npx invocation of non-well-known package — may execute untrusted codeexport const DISABLE_AUTO_UPDATES_COMMAND = 'npx job-application-agent@latest updates disable';Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
MEDIUM
npx invocation of non-well-known packagejob-application-agent/scripts/managed-runtime.mjs:1 · npx invocation of non-well-known package — may execute untrusted code// Skill-only installs (npx skills add, ClawHub, or a copied skill directory) ship theFix: Pin versions and sources; vendor anything fetched at install time.
AST06
HIGH
Auto-update or dynamic fetch configurationjob-application-agent/scripts/update-check.mjs:20 · Auto-update or dynamic fetch configuration — agent may load new code at runtimeexport const DISABLE_AUTO_UPDATES_COMMAND = 'npx job-application-agent@latest updates disable';Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
MEDIUM
npx invocation of non-well-known packageinstaller/src/cli.mjs:46 · npx invocation of non-well-known package — may execute untrusted code'Paste this into your JobAppAgent session, or run your usual agent after: npx job-application-agent@latest install',Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
MEDIUM
npx invocation of non-well-known packagejob-application-agent/platforms.json:11 · npx invocation of non-well-known package — may execute untrusted code…n an update exists. Opt in to automatic updates with updates enable.", "code": "npx job-application-agent@latest install" }, { "title": "Connect the skill directory", "text": "Merge th…Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
HIGH
Privileged sudo commandjob-application-agent/scripts/secret-store.mjs:135 · Privileged sudo command — agent may execute with elevated privilegesif (linuxToolMissing(error)) throw new Error(`${LINUX_STORE_REQUIRED_TOOL} is not installed. Install libsecret-tools (e.g. sudo apt-get install libsecret-tools) to enable Linux profile storage.`);Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.
AST05
MEDIUM
npx invocation of non-well-known packagejob-application-agent/SKILL.md:25 · npx invocation of non-well-known package — may execute untrusted codenpx job-application-agent@latest installFix: Pin versions and sources; vendor anything fetched at install time.
AST06
MEDIUM
npx invocation of non-well-known packagejob-application-agent/SKILL.md:18 · npx invocation of non-well-known package — may execute untrusted code…, tell the user the current and latest versions and ask whether to update; run `npx job-application-agent@latest update` only after they say yes. If it returns a `notice`, relay it to the user…Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
MEDIUM
npx invocation of non-well-known packagejob-application-agent/scripts/managed-runtime.mjs:9 · npx invocation of non-well-known package — may execute untrusted codeexport const INSTALL_COMMAND = 'npx job-application-agent@latest install';Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
HIGH
Auto-update or dynamic fetch configurationinstaller/src/scheduler.mjs:67 · Auto-update or dynamic fetch configuration — agent may load new code at runtime… New-ScheduledTaskAction -Execute '${command.replaceAll("'", "''")}' -Argument 'auto-update'\n$logon = New-ScheduledTaskTrigger -AtLogOn\n$hourly = New-ScheduledTaskTrigger -Once -At (Get-Date).AddMinutes(2) -RepetitionInterval (New-TimeSp…Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
MEDIUM
npx invocation of non-well-known packagejob-application-agent/platforms.json:2 · npx invocation of non-well-known package — may execute untrusted code…y checking Node.js 20+ and npm, then install the complete managed package with `npx job-application-agent@latest install`. Read the installed SKILL.md and its referenced runbooks in full as ne…Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
HIGH
Auto-update or dynamic fetch configurationjob-application-agent/scripts/update-check.mjs:99 · Auto-update or dynamic fetch configuration — agent may load new code at runtimeif (automaticUpdates && config.autoUpdateNoticeShown !== true) {Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
HIGH
Privileged sudo commandjob-application-agent/scripts/secret-store.mjs:154 · Privileged sudo command — agent may execute with elevated privilegesif (linuxToolMissing(error)) throw new Error(`${LINUX_STORE_REQUIRED_TOOL} is not installed. Install libsecret-tools (e.g. sudo apt-get install libsecret-tools) to enable Linux profile storage.`);Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.
AST05
HIGH
Auto-update or dynamic fetch configurationinstaller/src/installer.mjs:234 · Auto-update or dynamic fetch configuration — agent may load new code at runtimeconst next = { ...current, automaticUpdates: enabled, autoUpdateNoticeShown: true, updatedAt: new Date().toISOString() };Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
HIGH
Auto-update or dynamic fetch configurationinstaller/src/scheduler.mjs:45 · Auto-update or dynamic fetch configuration — agent may load new code at runtime…g>\n <key>ProgramArguments</key><array><string>${xml(command)}</string><string>auto-update</string></array>\n <key>RunAtLoad</key><true/>\n <key>StartInterval</key><integer>3600</integer>\n <key>StandardOutPath</key><string>${xml(path.join…Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
MEDIUM
npx invocation of non-well-known packageinstaller/src/installer.mjs:204 · npx invocation of non-well-known package — may execute untrusted code'To keep automatic updates, do nothing. To switch to notifications only, run: npx job-application-agent@latest updates disable',Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
HIGH
Auto-update or dynamic fetch configurationjob-application-agent/scripts/update-check.mjs:101 · Auto-update or dynamic fetch configuration — agent may load new code at runtimeconfig = { ...config, autoUpdateNoticeShown: true };Fix: Pin versions and sources; vendor anything fetched at install time.
AST06

Cost to the agent

Instructions loaded
≈8,388 tok
1 file · 59 in bundle

Tokens estimated at four characters each. Skills load their instruction text when triggered; the figure is what that costs.

Known vulnerabilities

No advisories in OSV for job-application-agent@3.8.7 as of 2d ago. This is the package itself, not its dependencies.

What would make this Verified

3 points to 80 · weights: behavior 45%, static 25%, prompt 15%, publisher 15%
  1. Unclaimed publisher≈ +8 on the totalClaim vaibhavarora14: a verified publisher gets +50 on publisher trust. It is free and usually instant with GitHub sign-in.
  2. Auto-update or dynamic fetch configuration≈ +4 on the totalPin versions and sources; vendor anything fetched at install time.
  3. Privileged sudo command≈ +4 on the totalBuild commands from fixed arguments; do not interpolate untrusted strings into a shell.
  4. npx invocation of non-well-known package≈ +2 on the totalPin versions and sources; vendor anything fetched at install time.
  5. File type combined with upload action≈ +2 on the totalRemove the call, or declare the host in frontmatter and explain in the README what is sent and why.
Publish a new version to npm, then queue it here. Not your skill? Claim the handle to get verdict changes by email.Claim vaibhavarora14Propose a patch to the maintainer