Install
$ agentstack add skill-hoangnguyen0403-agent-skills-standard-typescript-security Open-source listing, not yet scanned by AgentStack. Follow the source repository for install instructions.
Security review
⚠ Flagged1 finding(s); flagged for manual review. · v0.1.0 How review works →
- • Prompt-injection patterns
- • Secret / credential exfiltration
- • Dangerous shell & filesystem operations
- • Untrusted network calls
- • Known-malicious package signatures
- high Dangerous shell/eval execution.
What it can access
- ● Network access Used
- ✓ Filesystem access No
- ● Shell / process execution Used
- ● Environment & secrets Used
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
TypeScript Security
Priority: P0 (CRITICAL)
Validate Input at Boundaries
- Use
Zod,Joi, orclass-validatorat API boundary. Alwaysparseand validateuser-controlled inputbefore using. UsesafeParsefor error handling without throwing. Return400 with structured errorson failure.
See [references/REFERENCE.md](references/REFERENCE.md) for Zod validation schemas, secure cookie setup, and JWT auth patterns.
Prevent Injection and XSS
- Sanitization: Use
DOMPurifyfor HTML sanitization to prevent Cross-Site Scripting (XSS). - SQL Injection: Use Parameterized Queries (e.g.,
pool.query('... WHERE id = $1', [id])) or Type-safe ORMs (Prisma/TypeORM). UsePrisma.sqlfor raw queries. - Input Filtering: Sanitize
user-controlled inputbefore using it in file paths or OS commands (Command Injection).
Secure Authentication
- Use
Argon2idfor password hashing. ImplementJWT(viajsonwebtokenorjose) withHttpOnlyandSecurecookies. UseRS256for public/private key pairs and implementRefresh Token rotation. - Secrets: Store secrets in
.env(e.g.,JWT_SECRET) or Secret Managers. NEVER commit them to Git. - CORS: Configure
CORSwith Strict Origin Whitelisting. Avoidorigin: '*'. - Encryption: Use
crypto(Node.js) orWeb Crypto APIfor sensitive data. Avoid legacy algorithms like MD5/SHA1.
Verification
After typing validation schemas (Zod/joi) or auth guards, call getDiagnostics (typescript-lsp) to confirm type narrowing correct before finalizing.
Anti-Patterns
- No dynamic execution: Avoid
eval,Functionconstructor, or string literals as timer callbacks — all execute runtime code and bypass TypeScript's type system. - No shell string interpolation: Never use
execSync(\cmd ${userInput}\)or interpolate environment variables / config values intoexecSync/spawnSyncstrings. Shell metacharacters cause command injection (OWASP A03). UseexecFileSync('git', ['arg1', arg2])with a static command + separate args array instead. - No unvalidated SSRF origins: When a URL comes from env vars or config (e.g.,
FEEDBACK_API_URL), validate it against an allowed-origin allowlist before callingfetch()/axios. - No Plaintext: Never commit secrets.
- No Trust: Validate everything server-side.
References
See [references/REFERENCE.md](references/REFERENCE.md) for Zod validation, secure cookie setup, JWT auth, security headers, and RBAC patterns.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: HoangNguyen0403
- Source: HoangNguyen0403/agent-skills-standard
- License: Apache-2.0
- Homepage: https://www.npmjs.com/package/agent-skills-standard
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.