
Security News
/Research
Wallet-Draining npm Package Impersonates Nodemailer to Hijack Crypto Transactions
Malicious npm package impersonates Nodemailer and drains wallets by hijacking crypto transactions across multiple blockchains.
████████╗ █████╗ ███████╗██╗ ██╗██╗ ██╗███████╗██████╗ ██╗ ██╗
╚══██╔══╝██╔══██╗██╔════╝██║ ██╔╝██║ ██║██╔════╝██╔══██╗██║ ██╔╝
██║ ███████║███████╗█████╔╝ ██║ █╗ ██║█████╗ ██████╔╝█████╔╝
██║ ██╔══██║╚════██║██╔═██╗ ██║███╗██║██╔══╝ ██╔══██╗██╔═██╗
██║ ██║ ██║███████║██║ ██╗╚███╔███╔╝███████╗██║ ██║██║ ██╗
╚═╝ ╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝ ╚══╝╚══╝ ╚══════╝╚═╝ ╚═╝╚═╝ ╚═╝
A task management CLI with AI integration for development workflows.
Taskwerk is a command-line task manager that integrates with AI models (Claude, GPT, Mistral, Llama) to help manage development tasks. It stores tasks in SQLite and supports markdown import/export.
# Install globally via npm
npm install -g taskwerk
# Or use npx (no installation required)
npx taskwerk init
# 1. Initialize taskwerk in your project
taskwerk init
# 2. Add your first task
taskwerk add "Set up development environment" -p high
# 3. View your tasks
taskwerk list
# 4. Add more tasks with details
taskwerk add "Write unit tests for auth module" -p medium --tags backend,testing
taskwerk add "Review PR #42" -p high --due tomorrow
# 5. Use AI to help manage tasks
taskwerk ask "What should I work on first?"
taskwerk agent "Break down the auth module task into subtasks"
Let's say you're starting a new feature:
# Create a parent task for the feature
taskwerk add "Implement user authentication" -p high --tags feature,backend
# Use AI to help plan
taskwerk agent "Create subtasks for implementing user authentication with JWT"
# The agent creates subtasks for you:
# ✅ Created task TASK-123: Design authentication API endpoints
# ✅ Created task TASK-124: Implement JWT token generation
# ✅ Created task TASK-125: Add password hashing with bcrypt
# ✅ Created task TASK-126: Create login/logout endpoints
# ✅ Created task TASK-127: Add authentication middleware
# ✅ Created task TASK-128: Write tests for auth flow
# Check your tasks by tag
taskwerk list --tag auth
# Get AI insights
taskwerk ask "Show me the auth tasks ordered by dependency"
# Start working on a task
taskwerk update TASK-124 --status in-progress
# Add notes as you work
taskwerk update TASK-124 --note "Using RS256 algorithm for better security"
# Complete a task
taskwerk update TASK-124 --status done
Taskwerk features deep AI integration with support for multiple providers:
taskwerk aiconfig
Configure your AI providers and models:
# Interactive configuration
taskwerk aiconfig --choose
# Set provider directly
taskwerk aiconfig --provider openai --model gpt-4-turbo
# Configure API keys
taskwerk aiconfig --set anthropic.api_key=your-key-here
taskwerk aiconfig --set openai.api_key=your-key-here
# List available models
taskwerk aiconfig --list-models
# Test connections
taskwerk aiconfig --test
taskwerk ask
Get intelligent insights about your tasks and projects:
# Ask about priorities
taskwerk ask "What are my high priority tasks?"
# Get project insights
taskwerk ask "Analyze my backend tasks and suggest an order"
# Include file context
taskwerk ask "How do these tasks relate to the roadmap?" -f ROADMAP.md
# Include current tasks
taskwerk ask "What's the status of the auth feature?" -t
taskwerk agent
Let AI actively help manage and organize your tasks:
# Break down complex tasks
taskwerk agent "Split the database migration task into smaller steps"
# Organize your backlog
taskwerk agent "Group related tasks and add appropriate tags"
# Generate task lists from requirements
taskwerk agent "Create tasks from the requirements in spec.md" -f spec.md
# Plan your day
taskwerk agent "Create a prioritized task list for today based on deadlines"
taskwerk llm
Direct access to language models for general purpose use:
# Quick questions
taskwerk llm "Explain the difference between JWT and OAuth"
# Code generation
taskwerk llm "Write a Python function to validate email addresses"
# Pipe input/output
cat error.log | taskwerk llm "What's causing this error?"
taskwerk llm "Generate 10 test cases for a login API" > test-cases.md
Taskwerk includes tools that allow AI to interact with your tasks and files:
# List available AI tools
taskwerk aiconfig --list-tools
# Available tools include:
# - list_tasks: List and filter tasks
# - add_task: Create new tasks
# - update_task: Modify existing tasks
# - read_file: Read file contents
# - write_file: Write files (agent mode only)
# - list_files: Browse directory contents
# - search_code: Search for patterns in code
Taskwerk maintains conversation history for AI interactions, enabling continuous discussions about your tasks and projects. Each conversation is stored in SQLite with full history, allowing you to pick up where you left off.
Taskwerk clearly shows which conversation is active:
────────────────────────────────────────────────────────────
📁 💬 Active conversation: myproject project
Continuing with 5 messages of history
Use --new to start fresh, or twrk context to manage
────────────────────────────────────────────────────────────
Icons indicate:
# List all your conversations
taskwerk context list
taskwerk context list --all # Include older conversations
# View conversation history
taskwerk context show # Current conversation
taskwerk context show work # Specific conversation
taskwerk context show CHAT-001 # By ID
# Switch between conversations
taskwerk context switch work # Shows how to use it
# Manage conversations
taskwerk context rename CHAT-001 "sprint-planning"
taskwerk context delete old-discussion
# Continue current conversation
taskwerk ask "What were we discussing?"
# Use named conversations for topics
taskwerk ask --context work "Remember this sprint idea"
taskwerk ask --context learning "What should I study next?"
# Start fresh when needed
taskwerk ask --new "Let's discuss something different"
# Agent mode maintains separate conversations
taskwerk agent "Continue the feature we planned"
# See what conversations you have
$ taskwerk context list
🗨️ Your Chat Conversations
📁 Current Project (myapp)
🟢 💬 auth-implementation (myapp) [CHAT-003]
Last active: 2 hours ago • 12 messages
Started with: "Help me implement JWT authentication"
🌍 Global Conversations
🟢 💬 work (Global) [CHAT-001]
Last active: 1 hour ago • 8 messages
# Review a conversation
$ taskwerk context show auth-implementation
🗨️ Conversation Details
📁 💬 auth-implementation
ID: CHAT-003
Project: myapp
Created: 2024-01-15 10:30:00
Messages: 12
────────────────────────────────────────────────────────────
👤 You [10:30:15]
Help me implement JWT authentication for the user API
🤖 Assistant [10:30:18]
I'll help you implement JWT authentication. Let me break this down...
# Add tasks with various options
taskwerk add "Task description" \
--priority high \
--status in-progress \
--tags frontend,urgent \
--due "next friday" \
--assigned john
# List tasks with filtering
taskwerk list --status active
taskwerk list --priority high
taskwerk list --tag backend
taskwerk list --assigned me
taskwerk list --search "auth"
# View task details
taskwerk show TASK-123
# Update tasks
taskwerk update TASK-123 --status done
taskwerk update TASK-123 --add-tag reviewed
taskwerk update TASK-123 --note "Fixed edge case with empty passwords"
# Delete tasks
taskwerk delete TASK-123
# Create dependent tasks
taskwerk add "Deploy to production" --depends-on TASK-100,TASK-101
# Add detailed notes to tasks
taskwerk update TASK-123 --note "Remember to update the documentation"
taskwerk show TASK-123 --notes
# Full-text search across tasks
taskwerk search "authentication"
taskwerk search "bug" --status open --priority high
# Split a large task into subtasks
taskwerk split TASK-123 \
"Research payment providers" \
"Implement Stripe integration" \
"Add payment webhook handlers" \
"Write payment tests"
Taskwerk supports markdown-based import/export for easy sharing and backup:
# Export tasks to markdown
taskwerk export tasks.md
taskwerk export tasks.md --status active
taskwerk export tasks.md --tag sprint-42
# Import tasks from markdown
taskwerk import tasks.md
taskwerk import tasks.md --dry-run # Preview what will be imported
# Markdown format supports:
# - Checkboxes for status
# - Tags with #hashtags
# - Priorities with !, !!, !!!
# - Metadata in YAML frontmatter
Taskwerk stores configuration in ~/.taskwerk/config.yml
:
general:
defaultPriority: medium
defaultStatus: todo
taskPrefix: TASK
colors: true
dateFormat: YYYY-MM-DD
database:
path: ~/.taskwerk/tasks.db
backupEnabled: true
backupCount: 5
ai:
defaultProvider: anthropic
defaultModel: claude-3-5-sonnet-20241022
providers:
anthropic:
api_key: ${ANTHROPIC_API_KEY}
openai:
api_key: ${OPENAI_API_KEY}
Environment variables are supported using ${VAR_NAME}
syntax.
Create custom task templates:
# Create a bug report template
taskwerk add "Bug: $1" --template bug \
--priority high \
--tags bug,needs-investigation \
--assign qa-team
# Both 'taskwerk' and 'twrk' commands are available
twrk ls # Short for taskwerk list
twrk a "Fix bug" # Short for taskwerk add
# Export for project management tools
taskwerk export --format json > tasks.json
# Generate reports
taskwerk list --format json | jq '.[] | select(.priority=="high")'
# Create GitHub issues
taskwerk list --tag bug --format json | \
jq -r '.[] | "gh issue create --title \"" + .description + "\""' | sh
Taskwerk is built with:
We welcome contributions! Here's how to get started:
# Clone the repository
git clone https://github.com/TaisoAI/taskwerk.git
cd taskwerk
# Install dependencies
npm install
# Run tests
npm test
# Run in development
npm run dev -- list
# Build the project
npm run build
See CONTRIBUTING.md for detailed guidelines.
MIT © Taiso.ai
Built with ❤️ by developers, for developers. Special thanks to all contributors and the open source community.
Ready to supercharge your productivity?
npm install -g taskwerk
taskwerk init
taskwerk ask "What should I build today?"
Join us in making task management intelligent, efficient, and actually enjoyable. 🚀
[0.7.13-dev] - 2025-07-25
--context <name>
flag to use specific named contexts--new
flag to start fresh conversations--quiet
flag to hide context displaytwrk search <term>
as shortcut for twrk list --search <term>
FAQs
A task management CLI for developers and AI agents working together
The npm package taskwerk receives a total of 4 weekly downloads. As such, taskwerk popularity was classified as not popular.
We found that taskwerk demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
/Research
Malicious npm package impersonates Nodemailer and drains wallets by hijacking crypto transactions across multiple blockchains.
Security News
This episode explores the hard problem of reachability analysis, from static analysis limits to handling dynamic languages and massive dependency trees.
Security News
/Research
Malicious Nx npm versions stole secrets and wallet info using AI CLI tools; Socket’s AI scanner detected the supply chain attack and flagged the malware.