@blogic-cz/agent-tools 1.10.1 → 1.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +21 -44
- package/dist/credential-guard/bash.d.ts +3 -0
- package/dist/credential-guard/bash.d.ts.map +1 -0
- package/dist/credential-guard/claude-hook.d.ts.map +1 -1
- package/dist/credential-guard/engine.test.d.ts +5 -0
- package/dist/credential-guard/engine.test.d.ts.map +1 -0
- package/dist/credential-guard/index.d.ts +8 -35
- package/dist/credential-guard/index.d.ts.map +1 -1
- package/dist/credential-guard/ir.d.ts +150 -0
- package/dist/credential-guard/ir.d.ts.map +1 -0
- package/dist/credential-guard/literal-output.d.ts +2 -0
- package/dist/credential-guard/literal-output.d.ts.map +1 -0
- package/dist/credential-guard/passive-awk.d.ts +2 -0
- package/dist/credential-guard/passive-awk.d.ts.map +1 -0
- package/dist/credential-guard/passive-jq.d.ts.map +1 -1
- package/dist/credential-guard/passive-sed.d.ts +2 -0
- package/dist/credential-guard/passive-sed.d.ts.map +1 -0
- package/dist/credential-guard/passive.test.d.ts +2 -0
- package/dist/credential-guard/passive.test.d.ts.map +1 -0
- package/dist/credential-guard/paths.d.ts +14 -0
- package/dist/credential-guard/paths.d.ts.map +1 -0
- package/dist/credential-guard/policy.d.ts +47 -0
- package/dist/credential-guard/policy.d.ts.map +1 -0
- package/dist/credential-guard/powershell.d.ts +3 -0
- package/dist/credential-guard/powershell.d.ts.map +1 -0
- package/dist/credential-guard/registry.d.ts +89 -0
- package/dist/credential-guard/registry.d.ts.map +1 -0
- package/dist/credential-guard/review4.test.d.ts +2 -0
- package/dist/credential-guard/review4.test.d.ts.map +1 -0
- package/dist/credential-guard/review7.test.d.ts +2 -0
- package/dist/credential-guard/review7.test.d.ts.map +1 -0
- package/dist/credential-guard/shell-oracle.d.ts +2 -0
- package/dist/credential-guard/shell-oracle.d.ts.map +1 -0
- package/dist/credential-guard/xargs.d.ts +7 -0
- package/dist/credential-guard/xargs.d.ts.map +1 -0
- package/dist/db-tool/service.d.ts +2 -1
- package/dist/db-tool/service.d.ts.map +1 -1
- package/dist/db-tool/sql-client.d.ts +1 -0
- package/dist/db-tool/sql-client.d.ts.map +1 -1
- package/dist/gh-tool/pr/commands.d.ts.map +1 -1
- package/dist/gh-tool/read/api.d.ts +8 -0
- package/dist/gh-tool/read/api.d.ts.map +1 -1
- package/dist/gh-tool/read/cache.d.ts.map +1 -1
- package/dist/gh-tool/read/commands.d.ts +5 -0
- package/dist/gh-tool/read/commands.d.ts.map +1 -1
- package/dist/gh-tool/read/reads.d.ts +38 -0
- package/dist/gh-tool/read/reads.d.ts.map +1 -1
- package/dist/gh-tool/read/telemetry-command.d.ts +7 -0
- package/dist/gh-tool/read/telemetry-command.d.ts.map +1 -0
- package/dist/gh-tool/read/telemetry-store.d.ts +3 -0
- package/dist/gh-tool/read/telemetry-store.d.ts.map +1 -0
- package/dist/gh-tool/read/telemetry.d.ts +59 -0
- package/dist/gh-tool/read/telemetry.d.ts.map +1 -0
- package/dist/gh-tool/read/transport.d.ts.map +1 -1
- package/dist/observability-tool/logs.d.ts +1 -1
- package/dist/observability-tool/logs.d.ts.map +1 -1
- package/dist/observability-tool/metrics.d.ts +1 -1
- package/dist/observability-tool/metrics.d.ts.map +1 -1
- package/dist/observability-tool/shared.d.ts +2 -1
- package/dist/observability-tool/shared.d.ts.map +1 -1
- package/dist/observability-tool/trace.d.ts +1 -1
- package/dist/observability-tool/trace.d.ts.map +1 -1
- package/dist/shared/content-security.d.ts +3 -1
- package/dist/shared/content-security.d.ts.map +1 -1
- package/dist/shared/secret-env.d.ts +22 -0
- package/dist/shared/secret-env.d.ts.map +1 -0
- package/package.json +2 -1
- package/schemas/agent-tools.schema.json +1 -1
- package/src/credential-guard/bash.ts +769 -0
- package/src/credential-guard/claude-hook.ts +14 -14
- package/src/credential-guard/engine.test.ts +2050 -0
- package/src/credential-guard/index.ts +285 -4268
- package/src/credential-guard/ir.ts +139 -0
- package/src/credential-guard/literal-output.ts +8 -0
- package/src/credential-guard/passive-awk.ts +239 -0
- package/src/credential-guard/passive-jq.ts +183 -24
- package/src/credential-guard/passive-sed.ts +78 -0
- package/src/credential-guard/passive.test.ts +141 -0
- package/src/credential-guard/paths.ts +108 -0
- package/src/credential-guard/policy.ts +1576 -0
- package/src/credential-guard/powershell.ts +220 -0
- package/src/credential-guard/registry.ts +4720 -0
- package/src/credential-guard/review4.test.ts +83 -0
- package/src/credential-guard/review7.test.ts +51 -0
- package/src/credential-guard/rg-types.json +389 -0
- package/src/credential-guard/shell-oracle.ts +187 -0
- package/src/credential-guard/xargs.ts +65 -0
- package/src/db-tool/main.ts +2 -0
- package/src/db-tool/service.ts +122 -140
- package/src/db-tool/sql-client.ts +7 -4
- package/src/gh-tool/main.ts +30 -6
- package/src/gh-tool/pr/commands.ts +9 -2
- package/src/gh-tool/pr/core.ts +2 -2
- package/src/gh-tool/read/api.ts +73 -6
- package/src/gh-tool/read/cache.ts +13 -4
- package/src/gh-tool/read/commands.ts +17 -1
- package/src/gh-tool/read/reads.ts +84 -1
- package/src/gh-tool/read/telemetry-command.ts +45 -0
- package/src/gh-tool/read/telemetry-store.ts +85 -0
- package/src/gh-tool/read/telemetry.ts +191 -0
- package/src/gh-tool/read/transport.ts +10 -5
- package/src/gh-tool/workflow.ts +2 -2
- package/src/observability-tool/main.ts +7 -1
- package/src/observability-tool/shared.ts +20 -14
- package/src/shared/content-security.ts +7 -2
- package/src/shared/secret-env.ts +230 -0
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { expect, it } from "vitest";
|
|
2
|
+
import { createCredentialGuard } from "./index";
|
|
3
|
+
|
|
4
|
+
it.each(["unknown-type"])("rejects unknown Grep type %s", (type) => {
|
|
5
|
+
const guard = createCredentialGuard();
|
|
6
|
+
expect(() =>
|
|
7
|
+
guard.handleToolExecuteBefore(
|
|
8
|
+
{ tool: "Grep" },
|
|
9
|
+
{ args: { pattern: "FAKE", type, output_mode: "content" } },
|
|
10
|
+
),
|
|
11
|
+
).toThrow();
|
|
12
|
+
});
|
|
13
|
+
it.each(["ts", "js", "sh", "zsh", "json", "py", "md", "yaml"])(
|
|
14
|
+
"accepts Grep type filter %s",
|
|
15
|
+
(type) => {
|
|
16
|
+
const guard = createCredentialGuard();
|
|
17
|
+
expect(() =>
|
|
18
|
+
guard.handleToolExecuteBefore(
|
|
19
|
+
{ tool: "Grep" },
|
|
20
|
+
{ args: { pattern: "FAKE", type, output_mode: "content" } },
|
|
21
|
+
),
|
|
22
|
+
).not.toThrow();
|
|
23
|
+
},
|
|
24
|
+
);
|
|
25
|
+
it.each([
|
|
26
|
+
"gh pr view --zz-undeclared -R example/repo",
|
|
27
|
+
"rtk gain --zz-undeclared",
|
|
28
|
+
"rtk read --zz-undeclared README.md",
|
|
29
|
+
"find . --zz-undeclared",
|
|
30
|
+
])("accepts harmless undeclared special-command options: %s", (command) => {
|
|
31
|
+
const guard = createCredentialGuard();
|
|
32
|
+
expect(() =>
|
|
33
|
+
guard.handleToolExecuteBefore({ tool: "Bash" }, { args: { command } }),
|
|
34
|
+
).not.toThrow();
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
it.each([
|
|
38
|
+
"git grep text -- '*.ts' ':!*.json'",
|
|
39
|
+
"git grep text -- '*.cs' ':(exclude,glob)*Tests*'",
|
|
40
|
+
"git grep text -- '*.ts' ':^secrets'",
|
|
41
|
+
"rg --files -t sh",
|
|
42
|
+
])("accepts exclusions and file listings: %s", (command) => {
|
|
43
|
+
const guard = createCredentialGuard();
|
|
44
|
+
expect(() =>
|
|
45
|
+
guard.handleToolExecuteBefore({ tool: "Bash" }, { args: { command } }),
|
|
46
|
+
).not.toThrow();
|
|
47
|
+
});
|
|
48
|
+
it.each([
|
|
49
|
+
"git fetch origin main --u=printenv",
|
|
50
|
+
"git --zz=.env",
|
|
51
|
+
"git diff --unified .env ordinary.ts",
|
|
52
|
+
])("refuses ambiguous or undeclared option forms: %s", (command) => {
|
|
53
|
+
const guard = createCredentialGuard();
|
|
54
|
+
expect(() => guard.handleToolExecuteBefore({ tool: "Bash" }, { args: { command } })).toThrow();
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
it("checks a qualified environment provider in an attached path parameter", () => {
|
|
58
|
+
const guard = createCredentialGuard();
|
|
59
|
+
expect(() =>
|
|
60
|
+
guard.handleToolExecuteBefore(
|
|
61
|
+
{ tool: "PowerShell" },
|
|
62
|
+
{ args: { command: "Get-ChildItem -Path:'Microsoft.PowerShell.Core\\Environment::'" } },
|
|
63
|
+
),
|
|
64
|
+
).toThrow();
|
|
65
|
+
});
|
|
66
|
+
it.each(["nodejs", "pypy", "pypy3", "luajit", "lua5.4", "ipython", "ipython3", "bpython"])(
|
|
67
|
+
"refuses code stdin to %s",
|
|
68
|
+
(name) => {
|
|
69
|
+
const guard = createCredentialGuard();
|
|
70
|
+
expect(() =>
|
|
71
|
+
guard.handleToolExecuteBefore({ tool: "Bash" }, { args: { command: name + " <<< 'x'" } }),
|
|
72
|
+
).toThrow();
|
|
73
|
+
},
|
|
74
|
+
);
|
|
75
|
+
|
|
76
|
+
it.each(["git grep -hoE pattern -- '*.cs'", "npm run check env"])(
|
|
77
|
+
"accepts safe data and reader flags: %s",
|
|
78
|
+
(command) => {
|
|
79
|
+
expect(() =>
|
|
80
|
+
createCredentialGuard({}).handleToolExecuteBefore({ tool: "Bash" }, { args: { command } }),
|
|
81
|
+
).not.toThrow();
|
|
82
|
+
},
|
|
83
|
+
);
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { expect, it } from "vitest";
|
|
2
|
+
import { createCredentialGuard } from "./index";
|
|
3
|
+
|
|
4
|
+
it("checks code flags throughout short-option clusters in unknown operands", () => {
|
|
5
|
+
const guard = createCredentialGuard();
|
|
6
|
+
for (const prefix of ["unknown-cli", "pnpm exec", "cargo unknown-sub"]) {
|
|
7
|
+
for (const invocation of [
|
|
8
|
+
"bash -lc 'env | head'",
|
|
9
|
+
"bash -ec 'env | head'",
|
|
10
|
+
"sh -xc 'env | head'",
|
|
11
|
+
"python3 -Ic 'import os;print(os.environ)'",
|
|
12
|
+
"python3 -uc 'import os;print(os.environ)'",
|
|
13
|
+
"python -Ec 'import os;print(os.environ)'",
|
|
14
|
+
"python3 -Iuc'import os;print(os.environ)'",
|
|
15
|
+
"perl -we 'print %ENV'",
|
|
16
|
+
"ruby -we 'p ENV'",
|
|
17
|
+
"node -pe 'process.env'",
|
|
18
|
+
]) {
|
|
19
|
+
const command = `${prefix} ${invocation}`;
|
|
20
|
+
expect(() =>
|
|
21
|
+
guard.handleToolExecuteBefore({ tool: "Bash" }, { args: { command } }),
|
|
22
|
+
).toThrow();
|
|
23
|
+
}
|
|
24
|
+
for (const invocation of [
|
|
25
|
+
"python3 -Wc script.py",
|
|
26
|
+
"ruby -Icode script.rb",
|
|
27
|
+
"perl -Iexample script.pl",
|
|
28
|
+
]) {
|
|
29
|
+
const command = `${prefix} ${invocation}`;
|
|
30
|
+
expect(() =>
|
|
31
|
+
guard.handleToolExecuteBefore({ tool: "Bash" }, { args: { command } }),
|
|
32
|
+
).not.toThrow();
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
it("analyzes awk program operands under unknown commands", () => {
|
|
38
|
+
const guard = createCredentialGuard();
|
|
39
|
+
for (const prefix of ["unknown-cli", "pnpm exec", "git unknown-sub"]) {
|
|
40
|
+
for (const flags of ["", "-F:", "-F :", "-v key=1", "-vkey=1", "--", "-e", "--source="]) {
|
|
41
|
+
const command = `${prefix} awk ${flags}${flags.endsWith("=") ? "" : " "}'BEGIN{print ENVIRON["FAKE_TOKEN"]}'`;
|
|
42
|
+
expect(() =>
|
|
43
|
+
guard.handleToolExecuteBefore({ tool: "Bash" }, { args: { command } }),
|
|
44
|
+
).toThrow();
|
|
45
|
+
}
|
|
46
|
+
const command = `${prefix} awk -F: -v key=1 '{print $1}' input.txt`;
|
|
47
|
+
expect(() =>
|
|
48
|
+
guard.handleToolExecuteBefore({ tool: "Bash" }, { args: { command } }),
|
|
49
|
+
).not.toThrow();
|
|
50
|
+
}
|
|
51
|
+
});
|
|
@@ -0,0 +1,389 @@
|
|
|
1
|
+
{
|
|
2
|
+
"ada": ["*.adb", "*.ads"],
|
|
3
|
+
"agda": ["*.agda", "*.lagda"],
|
|
4
|
+
"aidl": ["*.aidl"],
|
|
5
|
+
"alire": ["alire.toml"],
|
|
6
|
+
"amake": ["*.bp", "*.mk"],
|
|
7
|
+
"asciidoc": ["*.adoc", "*.asc", "*.asciidoc"],
|
|
8
|
+
"asm": ["*.S", "*.asm", "*.s"],
|
|
9
|
+
"asp": ["*.ascx", "*.ascx.cs", "*.ascx.vb", "*.asp", "*.aspx", "*.aspx.cs", "*.aspx.vb"],
|
|
10
|
+
"ats": ["*.ats", "*.dats", "*.hats", "*.sats"],
|
|
11
|
+
"avro": ["*.avdl", "*.avpr", "*.avsc"],
|
|
12
|
+
"awk": ["*.awk"],
|
|
13
|
+
"bat": ["*.bat"],
|
|
14
|
+
"batch": ["*.bat"],
|
|
15
|
+
"bazel": [
|
|
16
|
+
"*.BUILD",
|
|
17
|
+
"*.bazel",
|
|
18
|
+
"*.bazelrc",
|
|
19
|
+
"*.bzl",
|
|
20
|
+
"BUILD",
|
|
21
|
+
"MODULE.bazel",
|
|
22
|
+
"WORKSPACE",
|
|
23
|
+
"WORKSPACE.bazel",
|
|
24
|
+
"WORKSPACE.bzlmod"
|
|
25
|
+
],
|
|
26
|
+
"bitbake": ["*.bb", "*.bbappend", "*.bbclass", "*.conf", "*.inc"],
|
|
27
|
+
"boxlang": ["*.bx", "*.bxm", "*.bxs"],
|
|
28
|
+
"brotli": ["*.br"],
|
|
29
|
+
"buildstream": ["*.bst"],
|
|
30
|
+
"bzip2": ["*.bz2", "*.tbz2"],
|
|
31
|
+
"c": ["*.[chH]", "*.[chH].in", "*.cats"],
|
|
32
|
+
"cabal": ["*.cabal"],
|
|
33
|
+
"candid": ["*.did"],
|
|
34
|
+
"carp": ["*.carp"],
|
|
35
|
+
"cbor": ["*.cbor"],
|
|
36
|
+
"ceylon": ["*.ceylon"],
|
|
37
|
+
"cfml": ["*.cfc", "*.cfm"],
|
|
38
|
+
"clojure": ["*.clj", "*.cljc", "*.cljs", "*.cljx"],
|
|
39
|
+
"cmake": ["*.cmake", "CMakeLists.txt"],
|
|
40
|
+
"cmd": ["*.bat", "*.cmd"],
|
|
41
|
+
"cml": ["*.cml"],
|
|
42
|
+
"coffeescript": ["*.coffee"],
|
|
43
|
+
"config": ["*.cfg", "*.conf", "*.config", "*.ini"],
|
|
44
|
+
"container": ["*Containerfile*", "*Dockerfile*"],
|
|
45
|
+
"coq": ["*.v"],
|
|
46
|
+
"cpp": [
|
|
47
|
+
"*.[ChH]",
|
|
48
|
+
"*.[ChH].in",
|
|
49
|
+
"*.[ch]pp",
|
|
50
|
+
"*.[ch]pp.in",
|
|
51
|
+
"*.[ch]xx",
|
|
52
|
+
"*.[ch]xx.in",
|
|
53
|
+
"*.cc",
|
|
54
|
+
"*.cc.in",
|
|
55
|
+
"*.hh",
|
|
56
|
+
"*.hh.in",
|
|
57
|
+
"*.inl"
|
|
58
|
+
],
|
|
59
|
+
"creole": ["*.creole"],
|
|
60
|
+
"crystal": ["*.cr", "*.ecr", "Projectfile", "shard.yml"],
|
|
61
|
+
"cs": ["*.cs"],
|
|
62
|
+
"csharp": ["*.cs"],
|
|
63
|
+
"cshtml": ["*.cshtml"],
|
|
64
|
+
"csproj": ["*.csproj"],
|
|
65
|
+
"css": ["*.css", "*.scss"],
|
|
66
|
+
"csv": ["*.csv"],
|
|
67
|
+
"cuda": ["*.cu", "*.cuh"],
|
|
68
|
+
"cython": ["*.pxd", "*.pxi", "*.pyx"],
|
|
69
|
+
"d": ["*.d"],
|
|
70
|
+
"dart": ["*.dart"],
|
|
71
|
+
"devicetree": ["*.dts", "*.dtsi", "*.dtso"],
|
|
72
|
+
"dhall": ["*.dhall"],
|
|
73
|
+
"diff": ["*.diff", "*.patch"],
|
|
74
|
+
"dita": ["*.dita", "*.ditamap", "*.ditaval"],
|
|
75
|
+
"docker": ["*Dockerfile*"],
|
|
76
|
+
"dockercompose": ["docker-compose.*.yml", "docker-compose.yml"],
|
|
77
|
+
"dts": ["*.dts", "*.dtsi"],
|
|
78
|
+
"dvc": ["*.dvc", "Dvcfile"],
|
|
79
|
+
"ebuild": ["*.ebuild", "*.eclass"],
|
|
80
|
+
"edn": ["*.edn"],
|
|
81
|
+
"elisp": ["*.el"],
|
|
82
|
+
"elixir": ["*.eex", "*.ex", "*.exs", "*.heex", "*.leex", "*.livemd"],
|
|
83
|
+
"elm": ["*.elm"],
|
|
84
|
+
"erb": ["*.erb"],
|
|
85
|
+
"erlang": ["*.erl", "*.hrl"],
|
|
86
|
+
"fennel": ["*.fnl"],
|
|
87
|
+
"fidl": ["*.fidl"],
|
|
88
|
+
"fish": ["*.fish"],
|
|
89
|
+
"flatbuffers": ["*.fbs"],
|
|
90
|
+
"fortran": ["*.F", "*.F77", "*.F90", "*.F95", "*.f", "*.f77", "*.f90", "*.f95", "*.pfo"],
|
|
91
|
+
"fsharp": ["*.fs", "*.fsi", "*.fsx"],
|
|
92
|
+
"fut": ["*.fut"],
|
|
93
|
+
"gap": ["*.g", "*.gap", "*.gd", "*.gi", "*.tst"],
|
|
94
|
+
"gdscript": ["*.gd"],
|
|
95
|
+
"gleam": ["*.gleam"],
|
|
96
|
+
"gn": ["*.gn", "*.gni"],
|
|
97
|
+
"go": ["*.go"],
|
|
98
|
+
"gprbuild": ["*.gpr"],
|
|
99
|
+
"gradle": [
|
|
100
|
+
"*.gradle",
|
|
101
|
+
"*.gradle.kts",
|
|
102
|
+
"gradle-wrapper.*",
|
|
103
|
+
"gradle.properties",
|
|
104
|
+
"gradlew",
|
|
105
|
+
"gradlew.bat"
|
|
106
|
+
],
|
|
107
|
+
"graphql": ["*.graphql", "*.graphqls"],
|
|
108
|
+
"groovy": ["*.gradle", "*.groovy"],
|
|
109
|
+
"gzip": ["*.gz", "*.tgz"],
|
|
110
|
+
"h": ["*.h", "*.hh", "*.hpp"],
|
|
111
|
+
"haml": ["*.haml"],
|
|
112
|
+
"hare": ["*.ha"],
|
|
113
|
+
"haskell": ["*.c2hs", "*.cpphs", "*.hs", "*.hsc", "*.lhs"],
|
|
114
|
+
"hbs": ["*.hbs"],
|
|
115
|
+
"hs": ["*.hs", "*.lhs"],
|
|
116
|
+
"html": ["*.ejs", "*.htm", "*.html"],
|
|
117
|
+
"hurl": ["*.hurl"],
|
|
118
|
+
"hy": ["*.hy"],
|
|
119
|
+
"idris": ["*.idr", "*.lidr"],
|
|
120
|
+
"janet": ["*.janet"],
|
|
121
|
+
"java": ["*.java", "*.jsp", "*.jspx", "*.properties"],
|
|
122
|
+
"jinja": ["*.j2", "*.jinja", "*.jinja2"],
|
|
123
|
+
"jl": ["*.jl"],
|
|
124
|
+
"js": ["*.cjs", "*.js", "*.jsx", "*.mjs", "*.vue"],
|
|
125
|
+
"json": ["*.json", "*.sarif", "composer.lock"],
|
|
126
|
+
"jsonl": ["*.jsonl"],
|
|
127
|
+
"julia": ["*.jl"],
|
|
128
|
+
"jupyter": ["*.ipynb", "*.jpynb"],
|
|
129
|
+
"k": ["*.k"],
|
|
130
|
+
"kconfig": ["Kconfig", "Kconfig.*"],
|
|
131
|
+
"kotlin": ["*.kt", "*.kts"],
|
|
132
|
+
"lean": ["*.lean"],
|
|
133
|
+
"less": ["*.less"],
|
|
134
|
+
"license": [
|
|
135
|
+
"*[.-]LICEN[CS]E*",
|
|
136
|
+
"AGPL-*[0-9]*",
|
|
137
|
+
"APACHE-*[0-9]*",
|
|
138
|
+
"BSD-*[0-9]*",
|
|
139
|
+
"CC-BY-*",
|
|
140
|
+
"COPYING",
|
|
141
|
+
"COPYING[.-]*",
|
|
142
|
+
"COPYRIGHT",
|
|
143
|
+
"COPYRIGHT[.-]*",
|
|
144
|
+
"EULA",
|
|
145
|
+
"EULA[.-]*",
|
|
146
|
+
"GFDL-*[0-9]*",
|
|
147
|
+
"GNU-*[0-9]*",
|
|
148
|
+
"GPL-*[0-9]*",
|
|
149
|
+
"LGPL-*[0-9]*",
|
|
150
|
+
"LICEN[CS]E",
|
|
151
|
+
"LICEN[CS]E[.-]*",
|
|
152
|
+
"MIT-*[0-9]*",
|
|
153
|
+
"MPL-*[0-9]*",
|
|
154
|
+
"NOTICE",
|
|
155
|
+
"NOTICE[.-]*",
|
|
156
|
+
"OFL-*[0-9]*",
|
|
157
|
+
"PATENTS",
|
|
158
|
+
"PATENTS[.-]*",
|
|
159
|
+
"UNLICEN[CS]E",
|
|
160
|
+
"UNLICEN[CS]E[.-]*",
|
|
161
|
+
"agpl[.-]*",
|
|
162
|
+
"gpl[.-]*",
|
|
163
|
+
"lgpl[.-]*",
|
|
164
|
+
"licen[cs]e",
|
|
165
|
+
"licen[cs]e.*"
|
|
166
|
+
],
|
|
167
|
+
"lilypond": ["*.ily", "*.ly"],
|
|
168
|
+
"lisp": ["*.el", "*.jl", "*.lisp", "*.lsp", "*.sc", "*.scm"],
|
|
169
|
+
"llvm": ["*.ll"],
|
|
170
|
+
"lock": ["*.lock", "package-lock.json"],
|
|
171
|
+
"log": ["*.log"],
|
|
172
|
+
"lua": ["*.lua"],
|
|
173
|
+
"lz4": ["*.lz4"],
|
|
174
|
+
"lzma": ["*.lzma"],
|
|
175
|
+
"m4": ["*.ac", "*.m4"],
|
|
176
|
+
"make": [
|
|
177
|
+
"*.mak",
|
|
178
|
+
"*.mk",
|
|
179
|
+
"Makefile.*",
|
|
180
|
+
"[Gg][Nn][Uu]makefile",
|
|
181
|
+
"[Gg][Nn][Uu]makefile.am",
|
|
182
|
+
"[Gg][Nn][Uu]makefile.in",
|
|
183
|
+
"[Mm]akefile",
|
|
184
|
+
"[Mm]akefile.am",
|
|
185
|
+
"[Mm]akefile.in"
|
|
186
|
+
],
|
|
187
|
+
"mako": ["*.mako", "*.mao"],
|
|
188
|
+
"man": ["*.[0-9][cEFMmpSx]", "*.[0-9lnpx]"],
|
|
189
|
+
"markdown": ["*.markdown", "*.md", "*.mdown", "*.mdwn", "*.mdx", "*.mkd", "*.mkdn"],
|
|
190
|
+
"matlab": ["*.m"],
|
|
191
|
+
"md": ["*.markdown", "*.md", "*.mdown", "*.mdwn", "*.mdx", "*.mkd", "*.mkdn"],
|
|
192
|
+
"meson": ["meson.build", "meson.options", "meson_options.txt"],
|
|
193
|
+
"minified": ["*.min.css", "*.min.html", "*.min.js"],
|
|
194
|
+
"mint": ["*.mint"],
|
|
195
|
+
"mk": ["mkfile"],
|
|
196
|
+
"ml": ["*.ml"],
|
|
197
|
+
"mojo": ["*.mojo"],
|
|
198
|
+
"motoko": ["*.mo"],
|
|
199
|
+
"msbuild": [
|
|
200
|
+
"*.csproj",
|
|
201
|
+
"*.fsproj",
|
|
202
|
+
"*.proj",
|
|
203
|
+
"*.props",
|
|
204
|
+
"*.sln",
|
|
205
|
+
"*.slnf",
|
|
206
|
+
"*.targets",
|
|
207
|
+
"*.vcxproj"
|
|
208
|
+
],
|
|
209
|
+
"nim": ["*.nim", "*.nimble", "*.nimf", "*.nims"],
|
|
210
|
+
"nix": ["*.nix"],
|
|
211
|
+
"objc": ["*.h", "*.m"],
|
|
212
|
+
"objcpp": ["*.h", "*.mm"],
|
|
213
|
+
"ocaml": ["*.ml", "*.mli", "*.mll", "*.mly"],
|
|
214
|
+
"org": ["*.org", "*.org_archive"],
|
|
215
|
+
"pants": ["BUILD"],
|
|
216
|
+
"pascal": ["*.dpr", "*.inc", "*.lpr", "*.pas", "*.pp"],
|
|
217
|
+
"pdf": ["*.pdf"],
|
|
218
|
+
"perl": ["*.PL", "*.perl", "*.pl", "*.plh", "*.plx", "*.pm", "*.t"],
|
|
219
|
+
"php": ["*.php", "*.php3", "*.php4", "*.php5", "*.php7", "*.php8", "*.pht", "*.phtml"],
|
|
220
|
+
"pkgbuild": ["PKGBUILD"],
|
|
221
|
+
"po": ["*.po"],
|
|
222
|
+
"pod": ["*.pod"],
|
|
223
|
+
"postscript": ["*.eps", "*.ps"],
|
|
224
|
+
"prolog": ["*.P", "*.pl", "*.pro", "*.prolog"],
|
|
225
|
+
"proto": ["*.proto"],
|
|
226
|
+
"protobuf": ["*.proto"],
|
|
227
|
+
"ps": ["*.cdxml", "*.ps1", "*.ps1xml", "*.psd1", "*.psm1"],
|
|
228
|
+
"puppet": ["*.epp", "*.erb", "*.pp", "*.rb"],
|
|
229
|
+
"purs": ["*.purs"],
|
|
230
|
+
"py": ["*.py", "*.pyi"],
|
|
231
|
+
"python": ["*.py", "*.pyi"],
|
|
232
|
+
"qmake": ["*.prf", "*.pri", "*.pro"],
|
|
233
|
+
"qml": ["*.qml"],
|
|
234
|
+
"qrc": ["*.qrc"],
|
|
235
|
+
"qui": ["*.ui"],
|
|
236
|
+
"r": ["*.R", "*.Rmd", "*.Rnw", "*.r", "*.rmd", "*.rnw"],
|
|
237
|
+
"racket": ["*.rkt"],
|
|
238
|
+
"raku": ["*.p6", "*.pl6", "*.pm6", "*.raku", "*.rakudoc", "*.rakumod", "*.rakutest"],
|
|
239
|
+
"rdoc": ["*.rdoc"],
|
|
240
|
+
"readme": ["*README", "README*"],
|
|
241
|
+
"reasonml": ["*.re", "*.rei"],
|
|
242
|
+
"red": ["*.r", "*.red", "*.reds"],
|
|
243
|
+
"rescript": ["*.res", "*.resi"],
|
|
244
|
+
"robot": ["*.robot"],
|
|
245
|
+
"rocq": ["*.v"],
|
|
246
|
+
"rst": ["*.rst"],
|
|
247
|
+
"ruby": ["*.gemspec", "*.rake", "*.rb", "*.rbw", ".irbrc", "Gemfile", "Rakefile", "config.ru"],
|
|
248
|
+
"rust": ["*.rs"],
|
|
249
|
+
"sass": ["*.sass", "*.scss"],
|
|
250
|
+
"scala": ["*.sbt", "*.scala"],
|
|
251
|
+
"scdoc": ["*.scd", "*.scdoc"],
|
|
252
|
+
"seed7": ["*.s7i", "*.sd7"],
|
|
253
|
+
"sh": [
|
|
254
|
+
"*.bash",
|
|
255
|
+
"*.bashrc",
|
|
256
|
+
"*.csh",
|
|
257
|
+
"*.cshrc",
|
|
258
|
+
"*.env",
|
|
259
|
+
"*.ksh",
|
|
260
|
+
"*.kshrc",
|
|
261
|
+
"*.sh",
|
|
262
|
+
"*.tcsh",
|
|
263
|
+
"*.zsh",
|
|
264
|
+
".bash_login",
|
|
265
|
+
".bash_logout",
|
|
266
|
+
".bash_profile",
|
|
267
|
+
".bashrc",
|
|
268
|
+
".cshrc",
|
|
269
|
+
".env",
|
|
270
|
+
".kshrc",
|
|
271
|
+
".login",
|
|
272
|
+
".logout",
|
|
273
|
+
".profile",
|
|
274
|
+
".tcshrc",
|
|
275
|
+
".zlogin",
|
|
276
|
+
".zlogout",
|
|
277
|
+
".zprofile",
|
|
278
|
+
".zshenv",
|
|
279
|
+
".zshrc",
|
|
280
|
+
"bash_login",
|
|
281
|
+
"bash_logout",
|
|
282
|
+
"bash_profile",
|
|
283
|
+
"bashrc",
|
|
284
|
+
"profile",
|
|
285
|
+
"zlogin",
|
|
286
|
+
"zlogout",
|
|
287
|
+
"zprofile",
|
|
288
|
+
"zshenv",
|
|
289
|
+
"zshrc"
|
|
290
|
+
],
|
|
291
|
+
"slim": ["*.skim", "*.slim", "*.slime"],
|
|
292
|
+
"smarty": ["*.tpl"],
|
|
293
|
+
"sml": ["*.sig", "*.sml"],
|
|
294
|
+
"solidity": ["*.sol"],
|
|
295
|
+
"soy": ["*.soy"],
|
|
296
|
+
"spark": ["*.spark"],
|
|
297
|
+
"spec": ["*.spec"],
|
|
298
|
+
"sql": ["*.psql", "*.sql"],
|
|
299
|
+
"ssa": ["*.ssa"],
|
|
300
|
+
"stylus": ["*.styl"],
|
|
301
|
+
"sv": ["*.h", "*.sv", "*.svh", "*.v", "*.vg"],
|
|
302
|
+
"svelte": ["*.svelte", "*.svelte.ts"],
|
|
303
|
+
"svg": ["*.svg"],
|
|
304
|
+
"swift": ["*.swift"],
|
|
305
|
+
"swig": ["*.def", "*.i"],
|
|
306
|
+
"systemd": [
|
|
307
|
+
"*.automount",
|
|
308
|
+
"*.conf",
|
|
309
|
+
"*.device",
|
|
310
|
+
"*.link",
|
|
311
|
+
"*.mount",
|
|
312
|
+
"*.path",
|
|
313
|
+
"*.scope",
|
|
314
|
+
"*.service",
|
|
315
|
+
"*.slice",
|
|
316
|
+
"*.socket",
|
|
317
|
+
"*.swap",
|
|
318
|
+
"*.target",
|
|
319
|
+
"*.timer"
|
|
320
|
+
],
|
|
321
|
+
"taskpaper": ["*.taskpaper"],
|
|
322
|
+
"tcl": ["*.tcl"],
|
|
323
|
+
"tex": ["*.bib", "*.cls", "*.dtx", "*.ins", "*.ltx", "*.sty", "*.tex"],
|
|
324
|
+
"texinfo": ["*.texi"],
|
|
325
|
+
"textile": ["*.textile"],
|
|
326
|
+
"tf": [
|
|
327
|
+
"*.terraform.lock.hcl",
|
|
328
|
+
"*.terraformrc",
|
|
329
|
+
"*.tf",
|
|
330
|
+
"*.tf.json",
|
|
331
|
+
"*.tfrc",
|
|
332
|
+
"*.tfvars",
|
|
333
|
+
"*.tfvars.json",
|
|
334
|
+
"terraform.rc"
|
|
335
|
+
],
|
|
336
|
+
"thrift": ["*.thrift"],
|
|
337
|
+
"toml": ["*.toml", "Cargo.lock"],
|
|
338
|
+
"ts": ["*.cts", "*.mts", "*.ts", "*.tsx"],
|
|
339
|
+
"twig": ["*.twig"],
|
|
340
|
+
"txt": ["*.txt"],
|
|
341
|
+
"typescript": ["*.cts", "*.mts", "*.ts", "*.tsx"],
|
|
342
|
+
"typoscript": ["*.ts", "*.typoscript"],
|
|
343
|
+
"typst": ["*.typ"],
|
|
344
|
+
"usd": ["*.usd", "*.usda", "*.usdc"],
|
|
345
|
+
"v": ["*.v", "*.vsh"],
|
|
346
|
+
"vala": ["*.vala"],
|
|
347
|
+
"vb": ["*.vb"],
|
|
348
|
+
"vcl": ["*.vcl"],
|
|
349
|
+
"verilog": ["*.sv", "*.svh", "*.v", "*.vh"],
|
|
350
|
+
"vhdl": ["*.vhd", "*.vhdl"],
|
|
351
|
+
"vim": ["*.vim", ".gvimrc", ".vimrc", "_gvimrc", "_vimrc", "gvimrc", "vimrc"],
|
|
352
|
+
"vimscript": ["*.vim", ".gvimrc", ".vimrc", "_gvimrc", "_vimrc", "gvimrc", "vimrc"],
|
|
353
|
+
"vue": ["*.vue"],
|
|
354
|
+
"webidl": ["*.idl", "*.webidl", "*.widl"],
|
|
355
|
+
"wgsl": ["*.wgsl"],
|
|
356
|
+
"wiki": ["*.mediawiki", "*.wiki"],
|
|
357
|
+
"xml": [
|
|
358
|
+
"*.dtd",
|
|
359
|
+
"*.rng",
|
|
360
|
+
"*.sch",
|
|
361
|
+
"*.xhtml",
|
|
362
|
+
"*.xjb",
|
|
363
|
+
"*.xml",
|
|
364
|
+
"*.xml.dist",
|
|
365
|
+
"*.xsd",
|
|
366
|
+
"*.xsl",
|
|
367
|
+
"*.xslt"
|
|
368
|
+
],
|
|
369
|
+
"xz": ["*.txz", "*.xz"],
|
|
370
|
+
"yacc": ["*.y"],
|
|
371
|
+
"yaml": ["*.yaml", "*.yml"],
|
|
372
|
+
"yang": ["*.yang"],
|
|
373
|
+
"z": ["*.Z"],
|
|
374
|
+
"zig": ["*.zig"],
|
|
375
|
+
"zsh": [
|
|
376
|
+
"*.zsh",
|
|
377
|
+
".zlogin",
|
|
378
|
+
".zlogout",
|
|
379
|
+
".zprofile",
|
|
380
|
+
".zshenv",
|
|
381
|
+
".zshrc",
|
|
382
|
+
"zlogin",
|
|
383
|
+
"zlogout",
|
|
384
|
+
"zprofile",
|
|
385
|
+
"zshenv",
|
|
386
|
+
"zshrc"
|
|
387
|
+
],
|
|
388
|
+
"zstd": ["*.zst", "*.zstd"]
|
|
389
|
+
}
|