Install
$ agentstack add skill-ysknsid25-skills-google-ts-styleguide 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 No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ● Dynamic code execution Used
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.
About
Google TypeScript Style Guide Reference
Google TypeScript Style Guide に基づくコーディングリファレンスです。TypeScriptの実装・コードレビュー・リファクタリング・ESLint設定時に、Googleのコーディング規約に準拠するために使います。
How to use this reference
This guide is organized into topic-specific reference files. Read the relevant file based on the current task:
| Topic | File | When to read | |-------|------|-------------| | File structure & imports/exports | references/source-file-structure.md | Organizing files, import/export patterns, module structure | | Language features | references/language-features.md | Variables, arrays, objects, classes, functions, control flow, decorators | | Naming conventions | references/naming.md | Naming variables, classes, constants, type parameters, files | | Type system | references/type-system.md | Type inference, null/undefined, any/unknown, interfaces vs types, generics | | Comments & toolchain | references/comments-and-toolchain.md | JSDoc, comments, @ts-ignore rules, conformance |
Quick Reference: Most Common Rules
These are the rules that come up most frequently. For details, read the corresponding reference file.
Naming (see references/naming.md)
- Classes/Interfaces/Types/Enums:
UpperCamelCase - Variables/functions/methods/properties:
lowerCamelCase - Global constants & enum values:
CONSTANT_CASE - Treat acronyms as words:
loadHttpUrl, notloadHTTPURL - No
IMyInterfaceprefix for interfaces - No trailing/leading underscores for private members
Imports & Exports (see references/source-file-structure.md)
- Use ES6 module syntax only (
import/export), neverrequire - Use named exports exclusively; avoid default exports
- Use
import typefor type-only imports - Do not use
namespace; use modules - No mutable exports (
export letis prohibited)
Variables & Types (see references/language-features.md, references/type-system.md)
- Use
constby default,letwhen reassignment needed; nevervar - Use
unknownoverany; avoidanywherever possible - Prefer
interfaceover type literal aliases - Simple arrays:
T[]; complex element types:Array - Prefer optional (
field?) over| undefined
Functions & Classes (see references/language-features.md)
- Prefer function declarations for named functions
- Use arrow functions for callbacks, not function expressions
- Mark never-reassigned properties as
readonly - Use parameter properties in constructors
- No
#privatefields; use TypeScript'sprivatekeyword
Control Flow (see references/language-features.md)
- Always use
===/!==(exception:== nullfor null/undefined check) - Always use braces for control statements
- Only throw
Errorinstances - All
switchmust havedefaultcase - Explicitly end statements with semicolons (no ASI reliance)
ESLint/Linter Configuration Guide
When configuring ESLint or other linters for Google TypeScript style compliance, enforce these core rules:
Must enable:
@typescript-eslint/no-explicit-any- Discourageanyusage@typescript-eslint/explicit-module-boundary-types- Encourage explicit return types at module boundaries@typescript-eslint/no-non-null-assertion- Discourage!assertionseqeqeqwithsmartoption - Enforce===/!==with== nullexceptionno-var- Forbidvarprefer-const- Preferconstoverletwhen no reassignmentcurly- Require braces for all control statements@typescript-eslint/no-namespace- Forbidnamespaceno-eval- Forbideval()no-debugger- Forbiddebugger@typescript-eslint/no-wrapper-object-types- ForbidString,Boolean,Numberwrapper types@typescript-eslint/consistent-type-imports- Enforceimport typefor type-only importsno-restricted-syntaxforWithStatement- Forbidwith
Naming convention rules (@typescript-eslint/naming-convention):
UpperCamelCasefor classes, interfaces, type aliases, enums, decoratorslowerCamelCasefor variables, functions, methods, parameters, propertiesCONSTANT_CASEfor global constants and enum members- No leading/trailing underscores
Import/export rules:
no-restricted-exportsor plugin rules to forbid default exports@typescript-eslint/no-require-imports- Forbidrequire()
Additional recommended:
@typescript-eslint/prefer-for-of- Preferfor...of@typescript-eslint/no-unnecessary-type-assertion- Remove unnecessary assertions@typescript-eslint/prefer-optional-chain- Prefer optional chaining@typescript-eslint/prefer-readonly- Preferreadonlyfor never-reassigned members
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: ysknsid25
- Source: ysknsid25/Skills
- License: MIT
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.