Simple script manager for creating, running, and syncing bash scripts
Project description
Taku
Simple script manager for creating, running, and syncing scripts.
Installation
uv tool install taku-cli
or
uv tool install "taku-cli[bling]" # just add some colors
Quick Start
# Create a new script
taku new hello
# Edit a script
taku edit hello
# Run a script
taku run hello
# Shortcut to running a script, tax stands for takux
tax hello
Commands
taku new <name> [--template/-t <name>]- Create a new script from templatetaku list- List all scripts, add-tto also list templatestaku get <name>- Show script detailstaku edit <name>- Edit a script (auto-pushes to git if repository)taku run <name> [args...]- Run a script with optional argumentstaku rm <name>- Remove a script (auto-pushes to git if repository)taku install <name|all>- Install script to~/.local/bintaku uninstall <name|all>- Remove script from~/.local/bin
Configuration
Set the scripts directory:
export TAKU_SCRIPTS=~/my-scripts
Default: ~/scripts
Templates
Create templates in <scripts-dir>/.templates/ and use with:
taku new myapp --template python
Template resolution order:
<scripts-dir>/.templates/<template-name>./<template-name>(current directory)
Templates can use ${script_name} variable for substitution.
Example Python template (~/.scripts/.templates/python):
#!/usr/bin/env -S uv run --script
# /// script
# requires-python = ">=3.12"
# dependencies = []
# ///
def main() -> None:
print("Hello from $script_name!")
if __name__ == "__main__":
main()
Git Integration
If your scripts directory is a Git repository, taku will automatically commit and push changes whenever you edit or remove scripts.
This keeps your changes synced, but to complete the auto-sync feature you also need to set up each machine to regularly pull the latest scripts.
-
Open your crontab:
crontab -e -
Add a line to pull updates every 15 minutes (adjust the path to your scripts directory):
*/15 * * * * cd /home/tobi/scripts && git pull --rebase >/dev/null 2>&1
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file taku_cli-0.3.1.tar.gz.
File metadata
- Download URL: taku_cli-0.3.1.tar.gz
- Upload date:
- Size: 7.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
81a6d538380e7d9a6fe92ff0a261a6c8c2e8e2ee4b10cc8e686e2631076f8b59
|
|
| MD5 |
fced5eb8e98a868ae5c5064711468002
|
|
| BLAKE2b-256 |
2d777e720a650bd09d645bdcfabf916c5810bab269f5dae2b3b1fb4d786bef9e
|
Provenance
The following attestation bundles were made for taku_cli-0.3.1.tar.gz:
Publisher:
publish.yml on Tobi-De/taku
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
taku_cli-0.3.1.tar.gz -
Subject digest:
81a6d538380e7d9a6fe92ff0a261a6c8c2e8e2ee4b10cc8e686e2631076f8b59 - Sigstore transparency entry: 533298966
- Sigstore integration time:
-
Permalink:
Tobi-De/taku@393949198613de5422f18e968db85000c6bcbc15 -
Branch / Tag:
refs/tags/v0.3.1 - Owner: https://github.com/Tobi-De
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@393949198613de5422f18e968db85000c6bcbc15 -
Trigger Event:
push
-
Statement type:
File details
Details for the file taku_cli-0.3.1-py3-none-any.whl.
File metadata
- Download URL: taku_cli-0.3.1-py3-none-any.whl
- Upload date:
- Size: 8.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8e07d842664a82a4c2c640345e15608ad257ac1b6d60e9e4ffc69720cf008dee
|
|
| MD5 |
0a8d28262ebb9e8ec6b6d07633beb891
|
|
| BLAKE2b-256 |
fe6c1011dec89178e1b9bcd12f962538964593dfef765cd2e7fee996065112fb
|
Provenance
The following attestation bundles were made for taku_cli-0.3.1-py3-none-any.whl:
Publisher:
publish.yml on Tobi-De/taku
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
taku_cli-0.3.1-py3-none-any.whl -
Subject digest:
8e07d842664a82a4c2c640345e15608ad257ac1b6d60e9e4ffc69720cf008dee - Sigstore transparency entry: 533298971
- Sigstore integration time:
-
Permalink:
Tobi-De/taku@393949198613de5422f18e968db85000c6bcbc15 -
Branch / Tag:
refs/tags/v0.3.1 - Owner: https://github.com/Tobi-De
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@393949198613de5422f18e968db85000c6bcbc15 -
Trigger Event:
push
-
Statement type: