@fredlackey/devutils 0.0.1
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 +156 -0
- package/bin/dev.js +16 -0
- package/files/README.md +0 -0
- package/files/claude/.claude/commands/setup-context.md +3 -0
- package/files/monorepos/_archive/README.md +36 -0
- package/files/monorepos/_legacy/README.md +36 -0
- package/files/monorepos/ai-docs/README.md +33 -0
- package/files/monorepos/apps/README.md +24 -0
- package/files/monorepos/docs/README.md +40 -0
- package/files/monorepos/packages/README.md +25 -0
- package/files/monorepos/research/README.md +29 -0
- package/files/monorepos/scripts/README.md +24 -0
- package/package.json +39 -0
- package/src/cli.js +68 -0
- package/src/commands/README.md +41 -0
- package/src/commands/configure.js +199 -0
- package/src/commands/identity.js +1630 -0
- package/src/commands/ignore.js +247 -0
- package/src/commands/install.js +173 -0
- package/src/commands/setup.js +212 -0
- package/src/commands/status.js +223 -0
- package/src/completion.js +284 -0
- package/src/constants.js +45 -0
- package/src/ignore/claude-code.txt +10 -0
- package/src/ignore/docker.txt +18 -0
- package/src/ignore/linux.txt +23 -0
- package/src/ignore/macos.txt +36 -0
- package/src/ignore/node.txt +55 -0
- package/src/ignore/terraform.txt +37 -0
- package/src/ignore/vscode.txt +18 -0
- package/src/ignore/windows.txt +35 -0
- package/src/index.js +0 -0
- package/src/installs/README.md +399 -0
- package/src/installs/adobe-creative-cloud.js +44 -0
- package/src/installs/appcleaner.js +44 -0
- package/src/installs/atomicparsley.js +44 -0
- package/src/installs/aws-cli.js +44 -0
- package/src/installs/balena-etcher.js +44 -0
- package/src/installs/bambu-studio.js +44 -0
- package/src/installs/bash-completion.js +44 -0
- package/src/installs/bash.js +44 -0
- package/src/installs/beyond-compare.js +44 -0
- package/src/installs/build-essential.js +44 -0
- package/src/installs/caffeine.js +44 -0
- package/src/installs/camtasia.js +44 -0
- package/src/installs/chatgpt.js +44 -0
- package/src/installs/chrome-canary.js +44 -0
- package/src/installs/chromium.js +44 -0
- package/src/installs/claude-code.js +44 -0
- package/src/installs/curl.js +44 -0
- package/src/installs/cursor.js +44 -0
- package/src/installs/dbschema.js +44 -0
- package/src/installs/docker.js +44 -0
- package/src/installs/drawio.js +44 -0
- package/src/installs/elmedia-player.js +44 -0
- package/src/installs/ffmpeg.js +44 -0
- package/src/installs/gemini-cli.js +44 -0
- package/src/installs/git.js +44 -0
- package/src/installs/gitego.js +44 -0
- package/src/installs/go.js +44 -0
- package/src/installs/google-chrome.js +44 -0
- package/src/installs/gpg.js +141 -0
- package/src/installs/homebrew.js +44 -0
- package/src/installs/imageoptim.js +44 -0
- package/src/installs/jq.js +44 -0
- package/src/installs/keyboard-maestro.js +44 -0
- package/src/installs/latex.js +44 -0
- package/src/installs/lftp.js +44 -0
- package/src/installs/messenger.js +44 -0
- package/src/installs/microsoft-office.js +44 -0
- package/src/installs/microsoft-teams.js +44 -0
- package/src/installs/node.js +44 -0
- package/src/installs/nordpass.js +44 -0
- package/src/installs/nvm.js +44 -0
- package/src/installs/openssh.js +134 -0
- package/src/installs/pandoc.js +44 -0
- package/src/installs/pinentry.js +44 -0
- package/src/installs/pngyu.js +44 -0
- package/src/installs/postman.js +44 -0
- package/src/installs/safari-tech-preview.js +44 -0
- package/src/installs/sfnt2woff.js +44 -0
- package/src/installs/shellcheck.js +44 -0
- package/src/installs/slack.js +44 -0
- package/src/installs/snagit.js +44 -0
- package/src/installs/spotify.js +44 -0
- package/src/installs/studio-3t.js +44 -0
- package/src/installs/sublime-text.js +44 -0
- package/src/installs/superwhisper.js +44 -0
- package/src/installs/tailscale.js +44 -0
- package/src/installs/termius.js +44 -0
- package/src/installs/terraform.js +44 -0
- package/src/installs/tidal.js +44 -0
- package/src/installs/tmux.js +44 -0
- package/src/installs/tree.js +44 -0
- package/src/installs/vim.js +44 -0
- package/src/installs/vlc.js +44 -0
- package/src/installs/vscode.js +44 -0
- package/src/installs/whatsapp.js +44 -0
- package/src/installs/woff2.js +44 -0
- package/src/installs/xcode.js +44 -0
- package/src/installs/yarn.js +44 -0
- package/src/installs/yq.js +44 -0
- package/src/installs/yt-dlp.js +44 -0
- package/src/installs/zoom.js +44 -0
- package/src/scripts/README.md +95 -0
- package/src/scripts/afk.js +23 -0
- package/src/scripts/backup-all.js +24 -0
- package/src/scripts/backup-source.js +24 -0
- package/src/scripts/brewd.js +23 -0
- package/src/scripts/brewi.js +24 -0
- package/src/scripts/brewr.js +24 -0
- package/src/scripts/brews.js +24 -0
- package/src/scripts/brewu.js +23 -0
- package/src/scripts/c.js +23 -0
- package/src/scripts/ccurl.js +24 -0
- package/src/scripts/certbot-crontab-init.js +24 -0
- package/src/scripts/certbot-init.js +25 -0
- package/src/scripts/ch.js +23 -0
- package/src/scripts/claude-danger.js +23 -0
- package/src/scripts/clean-dev.js +24 -0
- package/src/scripts/clear-dns-cache.js +23 -0
- package/src/scripts/clone.js +25 -0
- package/src/scripts/code-all.js +24 -0
- package/src/scripts/count-files.js +24 -0
- package/src/scripts/count-folders.js +24 -0
- package/src/scripts/count.js +24 -0
- package/src/scripts/d.js +23 -0
- package/src/scripts/datauri.js +24 -0
- package/src/scripts/delete-files.js +24 -0
- package/src/scripts/docker-clean.js +24 -0
- package/src/scripts/dp.js +23 -0
- package/src/scripts/e.js +24 -0
- package/src/scripts/empty-trash.js +23 -0
- package/src/scripts/evm.js +25 -0
- package/src/scripts/fetch-github-repos.js +25 -0
- package/src/scripts/get-channel.js +24 -0
- package/src/scripts/get-course.js +26 -0
- package/src/scripts/get-dependencies.js +25 -0
- package/src/scripts/get-folder.js +26 -0
- package/src/scripts/get-tunes.js +25 -0
- package/src/scripts/get-video.js +24 -0
- package/src/scripts/git-backup.js +25 -0
- package/src/scripts/git-clone.js +25 -0
- package/src/scripts/git-pup.js +23 -0
- package/src/scripts/git-push.js +24 -0
- package/src/scripts/h.js +24 -0
- package/src/scripts/hide-desktop-icons.js +23 -0
- package/src/scripts/hide-hidden-files.js +23 -0
- package/src/scripts/install-dependencies-from.js +25 -0
- package/src/scripts/ips.js +26 -0
- package/src/scripts/iso.js +24 -0
- package/src/scripts/killni.js +23 -0
- package/src/scripts/ll.js +24 -0
- package/src/scripts/local-ip.js +23 -0
- package/src/scripts/m.js +24 -0
- package/src/scripts/map.js +24 -0
- package/src/scripts/mkd.js +24 -0
- package/src/scripts/ncu-update-all.js +24 -0
- package/src/scripts/nginx-init.js +28 -0
- package/src/scripts/npmi.js +23 -0
- package/src/scripts/o.js +24 -0
- package/src/scripts/org-by-date.js +24 -0
- package/src/scripts/p.js +23 -0
- package/src/scripts/packages.js +25 -0
- package/src/scripts/path.js +23 -0
- package/src/scripts/ports.js +23 -0
- package/src/scripts/q.js +23 -0
- package/src/scripts/refresh-files.js +26 -0
- package/src/scripts/remove-smaller-files.js +24 -0
- package/src/scripts/rename-files-with-date.js +25 -0
- package/src/scripts/resize-image.js +25 -0
- package/src/scripts/rm-safe.js +24 -0
- package/src/scripts/s.js +24 -0
- package/src/scripts/set-git-public.js +23 -0
- package/src/scripts/show-desktop-icons.js +23 -0
- package/src/scripts/show-hidden-files.js +23 -0
- package/src/scripts/tpa.js +23 -0
- package/src/scripts/tpo.js +23 -0
- package/src/scripts/u.js +23 -0
- package/src/scripts/vpush.js +23 -0
- package/src/scripts/y.js +23 -0
- package/src/utils/README.md +95 -0
- package/src/utils/common/apps.js +143 -0
- package/src/utils/common/display.js +157 -0
- package/src/utils/common/network.js +185 -0
- package/src/utils/common/os.js +202 -0
- package/src/utils/common/package-manager.js +301 -0
- package/src/utils/common/privileges.js +138 -0
- package/src/utils/common/shell.js +195 -0
- package/src/utils/macos/apps.js +228 -0
- package/src/utils/macos/brew.js +315 -0
- package/src/utils/ubuntu/apt.js +301 -0
- package/src/utils/ubuntu/desktop.js +292 -0
- package/src/utils/ubuntu/snap.js +302 -0
- package/src/utils/ubuntu/systemd.js +286 -0
- package/src/utils/windows/choco.js +327 -0
- package/src/utils/windows/env.js +246 -0
- package/src/utils/windows/registry.js +269 -0
- package/src/utils/windows/shell.js +240 -0
- package/src/utils/windows/winget.js +378 -0
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Install packages via Homebrew.
|
|
5
|
+
* @module scripts/brewi
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Installs the specified package(s) using Homebrew.
|
|
10
|
+
* Shorthand for `brew install`.
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments
|
|
13
|
+
* @param {string} args.0 - Package name to install
|
|
14
|
+
* @returns {Promise<void>}
|
|
15
|
+
*/
|
|
16
|
+
async function main(args) {
|
|
17
|
+
// TODO: Implement brew install
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
module.exports = { main };
|
|
21
|
+
|
|
22
|
+
if (require.main === module) {
|
|
23
|
+
main(process.argv.slice(2));
|
|
24
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Uninstall packages via Homebrew.
|
|
5
|
+
* @module scripts/brewr
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Uninstalls the specified package(s) using Homebrew.
|
|
10
|
+
* Shorthand for `brew uninstall`.
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments
|
|
13
|
+
* @param {string} args.0 - Package name to uninstall
|
|
14
|
+
* @returns {Promise<void>}
|
|
15
|
+
*/
|
|
16
|
+
async function main(args) {
|
|
17
|
+
// TODO: Implement brew uninstall
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
module.exports = { main };
|
|
21
|
+
|
|
22
|
+
if (require.main === module) {
|
|
23
|
+
main(process.argv.slice(2));
|
|
24
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Search for packages via Homebrew.
|
|
5
|
+
* @module scripts/brews
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Searches for packages matching the specified term using Homebrew.
|
|
10
|
+
* Shorthand for `brew search`.
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments
|
|
13
|
+
* @param {string} args.0 - Search term
|
|
14
|
+
* @returns {Promise<void>}
|
|
15
|
+
*/
|
|
16
|
+
async function main(args) {
|
|
17
|
+
// TODO: Implement brew search
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
module.exports = { main };
|
|
21
|
+
|
|
22
|
+
if (require.main === module) {
|
|
23
|
+
main(process.argv.slice(2));
|
|
24
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Update, upgrade, and cleanup Homebrew.
|
|
5
|
+
* @module scripts/brewu
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Performs a full Homebrew maintenance cycle:
|
|
10
|
+
* update (fetch latest formulae), upgrade (update packages), and cleanup.
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments (unused)
|
|
13
|
+
* @returns {Promise<void>}
|
|
14
|
+
*/
|
|
15
|
+
async function main(args) {
|
|
16
|
+
// TODO: Implement brew update/upgrade/cleanup
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
module.exports = { main };
|
|
20
|
+
|
|
21
|
+
if (require.main === module) {
|
|
22
|
+
main(process.argv.slice(2));
|
|
23
|
+
}
|
package/src/scripts/c.js
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Clear the terminal screen.
|
|
5
|
+
* @module scripts/c
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Clears the terminal screen by outputting the appropriate
|
|
10
|
+
* escape sequences for the current platform.
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments (unused)
|
|
13
|
+
* @returns {Promise<void>}
|
|
14
|
+
*/
|
|
15
|
+
async function main(args) {
|
|
16
|
+
// TODO: Implement terminal clear
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
module.exports = { main };
|
|
20
|
+
|
|
21
|
+
if (require.main === module) {
|
|
22
|
+
main(process.argv.slice(2));
|
|
23
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Curl JSON endpoint with pretty output.
|
|
5
|
+
* @module scripts/ccurl
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Fetches a URL expecting JSON response and pretty-prints
|
|
10
|
+
* the output using jq-style formatting.
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments
|
|
13
|
+
* @param {string} args.0 - URL to fetch
|
|
14
|
+
* @returns {Promise<void>}
|
|
15
|
+
*/
|
|
16
|
+
async function main(args) {
|
|
17
|
+
// TODO: Implement JSON curl with pretty print
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
module.exports = { main };
|
|
21
|
+
|
|
22
|
+
if (require.main === module) {
|
|
23
|
+
main(process.argv.slice(2));
|
|
24
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Add certbot renewal cron job.
|
|
5
|
+
* @module scripts/certbot-crontab-init
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Adds a cron job to automatically renew SSL certificates
|
|
10
|
+
* using certbot. Checks if cron service is running and starts
|
|
11
|
+
* it if necessary.
|
|
12
|
+
*
|
|
13
|
+
* @param {string[]} args - Command line arguments (unused)
|
|
14
|
+
* @returns {Promise<void>}
|
|
15
|
+
*/
|
|
16
|
+
async function main(args) {
|
|
17
|
+
// TODO: Implement certbot cron setup
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
module.exports = { main };
|
|
21
|
+
|
|
22
|
+
if (require.main === module) {
|
|
23
|
+
main(process.argv.slice(2));
|
|
24
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Install SSL certificates via certbot.
|
|
5
|
+
* @module scripts/certbot-init
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Installs SSL certificates for the specified domains using
|
|
10
|
+
* certbot with nginx integration. Installs certbot if not present.
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments
|
|
13
|
+
* @param {string} args.0 - -d/--domain: Domain name(s) for certificate
|
|
14
|
+
* @param {string} args.1 - -e/--email: Email for Let's Encrypt registration
|
|
15
|
+
* @returns {Promise<void>}
|
|
16
|
+
*/
|
|
17
|
+
async function main(args) {
|
|
18
|
+
// TODO: Implement certbot SSL setup
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
module.exports = { main };
|
|
22
|
+
|
|
23
|
+
if (require.main === module) {
|
|
24
|
+
main(process.argv.slice(2));
|
|
25
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Clear bash command history.
|
|
5
|
+
* @module scripts/ch
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Clears the bash command history by truncating the history file
|
|
10
|
+
* and clearing the in-memory history.
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments (unused)
|
|
13
|
+
* @returns {Promise<void>}
|
|
14
|
+
*/
|
|
15
|
+
async function main(args) {
|
|
16
|
+
// TODO: Implement history clear
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
module.exports = { main };
|
|
20
|
+
|
|
21
|
+
if (require.main === module) {
|
|
22
|
+
main(process.argv.slice(2));
|
|
23
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Launch Claude CLI skipping permission checks.
|
|
5
|
+
* @module scripts/claude-danger
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Launches the Claude CLI with the --dangerously-skip-permissions
|
|
10
|
+
* flag, bypassing permission prompts. Use with caution.
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments to pass to Claude
|
|
13
|
+
* @returns {Promise<void>}
|
|
14
|
+
*/
|
|
15
|
+
async function main(args) {
|
|
16
|
+
// TODO: Implement Claude CLI launcher
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
module.exports = { main };
|
|
20
|
+
|
|
21
|
+
if (require.main === module) {
|
|
22
|
+
main(process.argv.slice(2));
|
|
23
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Remove node_modules and bower_components recursively.
|
|
5
|
+
* @module scripts/clean-dev
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Recursively finds and removes all node_modules and bower_components
|
|
10
|
+
* directories to free up disk space.
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments
|
|
13
|
+
* @param {string} [args.0] - Optional path to clean (defaults to current directory)
|
|
14
|
+
* @returns {Promise<void>}
|
|
15
|
+
*/
|
|
16
|
+
async function main(args) {
|
|
17
|
+
// TODO: Implement recursive dev folder cleanup
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
module.exports = { main };
|
|
21
|
+
|
|
22
|
+
if (require.main === module) {
|
|
23
|
+
main(process.argv.slice(2));
|
|
24
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Flush the DNS cache.
|
|
5
|
+
* @module scripts/clear-dns-cache
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Clears the system's DNS cache to force fresh DNS lookups.
|
|
10
|
+
* Uses platform-specific commands for each operating system.
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments (unused)
|
|
13
|
+
* @returns {Promise<void>}
|
|
14
|
+
*/
|
|
15
|
+
async function main(args) {
|
|
16
|
+
// TODO: Implement DNS cache flush
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
module.exports = { main };
|
|
20
|
+
|
|
21
|
+
if (require.main === module) {
|
|
22
|
+
main(process.argv.slice(2));
|
|
23
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Clone a repository and install dependencies.
|
|
5
|
+
* @module scripts/clone
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Clones a git repository and automatically installs dependencies
|
|
10
|
+
* if a package.json is found (using npm, yarn, or pnpm).
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments
|
|
13
|
+
* @param {string} args.0 - Repository URL to clone
|
|
14
|
+
* @param {string} [args.1] - Optional target directory name
|
|
15
|
+
* @returns {Promise<void>}
|
|
16
|
+
*/
|
|
17
|
+
async function main(args) {
|
|
18
|
+
// TODO: Implement clone with dependency install
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
module.exports = { main };
|
|
22
|
+
|
|
23
|
+
if (require.main === module) {
|
|
24
|
+
main(process.argv.slice(2));
|
|
25
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Open all subdirectories in VS Code.
|
|
5
|
+
* @module scripts/code-all
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Opens each immediate subdirectory of the current directory
|
|
10
|
+
* as a separate VS Code window.
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments
|
|
13
|
+
* @param {string} [args.0] - Optional path (defaults to current directory)
|
|
14
|
+
* @returns {Promise<void>}
|
|
15
|
+
*/
|
|
16
|
+
async function main(args) {
|
|
17
|
+
// TODO: Implement VS Code multi-open
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
module.exports = { main };
|
|
21
|
+
|
|
22
|
+
if (require.main === module) {
|
|
23
|
+
main(process.argv.slice(2));
|
|
24
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Count only files in current directory.
|
|
5
|
+
* @module scripts/count-files
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Counts and displays the number of files (not directories) in the
|
|
10
|
+
* current or specified directory.
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments
|
|
13
|
+
* @param {string} [args.0] - Optional path to count (defaults to current directory)
|
|
14
|
+
* @returns {Promise<void>}
|
|
15
|
+
*/
|
|
16
|
+
async function main(args) {
|
|
17
|
+
// TODO: Implement file counting
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
module.exports = { main };
|
|
21
|
+
|
|
22
|
+
if (require.main === module) {
|
|
23
|
+
main(process.argv.slice(2));
|
|
24
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Count only folders in current directory.
|
|
5
|
+
* @module scripts/count-folders
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Counts and displays the number of directories (not files) in the
|
|
10
|
+
* current or specified directory.
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments
|
|
13
|
+
* @param {string} [args.0] - Optional path to count (defaults to current directory)
|
|
14
|
+
* @returns {Promise<void>}
|
|
15
|
+
*/
|
|
16
|
+
async function main(args) {
|
|
17
|
+
// TODO: Implement folder counting
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
module.exports = { main };
|
|
21
|
+
|
|
22
|
+
if (require.main === module) {
|
|
23
|
+
main(process.argv.slice(2));
|
|
24
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Count files and folders in current directory.
|
|
5
|
+
* @module scripts/count
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Counts and displays the number of files and folders in the
|
|
10
|
+
* current or specified directory.
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments
|
|
13
|
+
* @param {string} [args.0] - Optional path to count (defaults to current directory)
|
|
14
|
+
* @returns {Promise<void>}
|
|
15
|
+
*/
|
|
16
|
+
async function main(args) {
|
|
17
|
+
// TODO: Implement file/folder counting
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
module.exports = { main };
|
|
21
|
+
|
|
22
|
+
if (require.main === module) {
|
|
23
|
+
main(process.argv.slice(2));
|
|
24
|
+
}
|
package/src/scripts/d.js
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Navigate to the Desktop directory.
|
|
5
|
+
* @module scripts/d
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Changes the current working directory to the user's Desktop folder.
|
|
10
|
+
* Outputs the path for use with shell integration (e.g., cd $(d)).
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments (unused)
|
|
13
|
+
* @returns {Promise<void>}
|
|
14
|
+
*/
|
|
15
|
+
async function main(args) {
|
|
16
|
+
// TODO: Implement Desktop navigation
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
module.exports = { main };
|
|
20
|
+
|
|
21
|
+
if (require.main === module) {
|
|
22
|
+
main(process.argv.slice(2));
|
|
23
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Convert file to base64 data URI.
|
|
5
|
+
* @module scripts/datauri
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Converts a file to a base64-encoded data URI string.
|
|
10
|
+
* Automatically detects the MIME type from the file.
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments
|
|
13
|
+
* @param {string} args.0 - Path to the file to convert
|
|
14
|
+
* @returns {Promise<void>}
|
|
15
|
+
*/
|
|
16
|
+
async function main(args) {
|
|
17
|
+
// TODO: Implement data URI conversion
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
module.exports = { main };
|
|
21
|
+
|
|
22
|
+
if (require.main === module) {
|
|
23
|
+
main(process.argv.slice(2));
|
|
24
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Delete files matching a pattern.
|
|
5
|
+
* @module scripts/delete-files
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Finds and deletes files matching the specified pattern.
|
|
10
|
+
* Defaults to removing .DS_Store files if no pattern is provided.
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments
|
|
13
|
+
* @param {string} [args.0] - Glob pattern to match (defaults to "*.DS_Store")
|
|
14
|
+
* @returns {Promise<void>}
|
|
15
|
+
*/
|
|
16
|
+
async function main(args) {
|
|
17
|
+
// TODO: Implement pattern-based file deletion
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
module.exports = { main };
|
|
21
|
+
|
|
22
|
+
if (require.main === module) {
|
|
23
|
+
main(process.argv.slice(2));
|
|
24
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Remove all Docker containers, images, and volumes.
|
|
5
|
+
* @module scripts/docker-clean
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Removes ALL Docker containers, images, and volumes after
|
|
10
|
+
* prompting for confirmation. This action cannot be undone.
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments
|
|
13
|
+
* @param {string} [args.0] - Pass "--force" to skip confirmation
|
|
14
|
+
* @returns {Promise<void>}
|
|
15
|
+
*/
|
|
16
|
+
async function main(args) {
|
|
17
|
+
// TODO: Implement Docker cleanup
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
module.exports = { main };
|
|
21
|
+
|
|
22
|
+
if (require.main === module) {
|
|
23
|
+
main(process.argv.slice(2));
|
|
24
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Display running Docker containers in formatted table.
|
|
5
|
+
* @module scripts/dp
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Displays a formatted table of running Docker containers
|
|
10
|
+
* showing ID, name, and port mappings.
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments (unused)
|
|
13
|
+
* @returns {Promise<void>}
|
|
14
|
+
*/
|
|
15
|
+
async function main(args) {
|
|
16
|
+
// TODO: Implement Docker container listing
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
module.exports = { main };
|
|
20
|
+
|
|
21
|
+
if (require.main === module) {
|
|
22
|
+
main(process.argv.slice(2));
|
|
23
|
+
}
|
package/src/scripts/e.js
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Open a file in vim editor.
|
|
5
|
+
* @module scripts/e
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Opens the specified file(s) in the vim editor.
|
|
10
|
+
* Passes all arguments directly to vim.
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments
|
|
13
|
+
* @param {string} args.0 - File path to open in vim
|
|
14
|
+
* @returns {Promise<void>}
|
|
15
|
+
*/
|
|
16
|
+
async function main(args) {
|
|
17
|
+
// TODO: Implement vim launcher
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
module.exports = { main };
|
|
21
|
+
|
|
22
|
+
if (require.main === module) {
|
|
23
|
+
main(process.argv.slice(2));
|
|
24
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Empty all trash and system logs.
|
|
5
|
+
* @module scripts/empty-trash
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Empties the system trash, mounted volume trash, and clears
|
|
10
|
+
* system logs to free up disk space.
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments (unused)
|
|
13
|
+
* @returns {Promise<void>}
|
|
14
|
+
*/
|
|
15
|
+
async function main(args) {
|
|
16
|
+
// TODO: Implement trash emptying
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
module.exports = { main };
|
|
20
|
+
|
|
21
|
+
if (require.main === module) {
|
|
22
|
+
main(process.argv.slice(2));
|
|
23
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Execute vim macro on multiple files.
|
|
5
|
+
* @module scripts/evm
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Executes a vim macro (stored in register 'q') on one or more files.
|
|
10
|
+
* Optionally repeats the macro multiple times per file.
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments
|
|
13
|
+
* @param {string} args.0 - File path(s) to process
|
|
14
|
+
* @param {string} [args.last] - Number of times to run macro (default: 1)
|
|
15
|
+
* @returns {Promise<void>}
|
|
16
|
+
*/
|
|
17
|
+
async function main(args) {
|
|
18
|
+
// TODO: Implement vim macro execution
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
module.exports = { main };
|
|
22
|
+
|
|
23
|
+
if (require.main === module) {
|
|
24
|
+
main(process.argv.slice(2));
|
|
25
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Clone all repositories from a GitHub organization.
|
|
5
|
+
* @module scripts/fetch-github-repos
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Fetches the list of repositories from a GitHub organization
|
|
10
|
+
* and clones each one into the specified destination folder.
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments
|
|
13
|
+
* @param {string} args.0 - GitHub organization name
|
|
14
|
+
* @param {string} args.1 - Destination folder path
|
|
15
|
+
* @returns {Promise<void>}
|
|
16
|
+
*/
|
|
17
|
+
async function main(args) {
|
|
18
|
+
// TODO: Implement GitHub org repo fetcher
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
module.exports = { main };
|
|
22
|
+
|
|
23
|
+
if (require.main === module) {
|
|
24
|
+
main(process.argv.slice(2));
|
|
25
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @fileoverview Download all videos from a YouTube channel.
|
|
5
|
+
* @module scripts/get-channel
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Downloads all videos from a YouTube channel using yt-dlp.
|
|
10
|
+
* Names files with upload date prefix for organization.
|
|
11
|
+
*
|
|
12
|
+
* @param {string[]} args - Command line arguments
|
|
13
|
+
* @param {string} args.0 - YouTube channel name or URL
|
|
14
|
+
* @returns {Promise<void>}
|
|
15
|
+
*/
|
|
16
|
+
async function main(args) {
|
|
17
|
+
// TODO: Implement channel download
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
module.exports = { main };
|
|
21
|
+
|
|
22
|
+
if (require.main === module) {
|
|
23
|
+
main(process.argv.slice(2));
|
|
24
|
+
}
|