Skip to content

Updating Next in prep for the 2026 release - #79

Merged
secureideas merged 89 commits into
nextfrom
main
Jul 20, 2026
Merged

Updating Next in prep for the 2026 release#79
secureideas merged 89 commits into
nextfrom
main

Conversation

@secureideas

Copy link
Copy Markdown
Member

No description provided.

secureideas and others added 30 commits May 8, 2023 12:28
Sync with SamuraiWTF 5.3 release
to work with rename of arrrspace repo.
Add first automated test for burpsuite
add tests for all packages, fix juice-shop, sqlmap, zap, and ssrf
Update and rename arrrspace.yml to k8s-labs.yml
JasonGillam and others added 29 commits February 9, 2025 14:17
Planning documentation for migrating from Python-based v1 to
Bun/TypeScript-based v2. Includes phased approach for preserving
legacy code, copying new codebase, and setting up CI/CD.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Complete rewrite of Katana with modern architecture and tooling:

Architecture Changes:
- Replaced Python/CherryPy with TypeScript/Bun runtime
- Single binary distribution instead of Python package
- React-based web dashboard with real-time updates
- Docker Compose-based module system
- Integrated reverse proxy with automatic DNS and SSL

Core Features:
- Install/manage vulnerable application targets
- Install/manage security testing tools
- Real-time operation status via SSE
- Certificate management with mkcert
- DNS configuration for local development
- System health checks and cleanup utilities

Module System:
- Restructured modules with Docker Compose
- Target modules: dojo-basic-lite, dojo-scavenger-lite, dvga, dvwa, juiceshop, musashi, wrongsecrets
- Tool modules: ffuf, nikto, sqlmap, trufflehog, wordlists
- Shell script-based tool installation

CI/CD:
- GitHub Actions workflow for build and test
- Automated release workflow triggered by tags
- Linux x64 binary distribution

Documentation:
- Comprehensive guides for getting started, development, deployment
- Architecture documentation
- Module development guide
- Troubleshooting guide

Breaking Changes:
- No backward compatibility with v1
- Complete API redesign
- New module format (Docker Compose vs YAML)
- Different CLI command structure

License: Apache 2.0 for maximum permissiveness and commercial use

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
The workflows were missing the critical UI build step that compiles the
React dashboard before creating the binary. Without this step, the binary
would not include the web interface.

Changes:
- Add "Build UI" step to CI workflow before binary compilation
- Add "Build UI" step to release workflow before binary compilation
- Ensures the embedded web dashboard is included in all builds

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Vagrant creates a .vagrant directory for local state that should not be
committed to version control.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Since this is now the official katana repository (not katana2), all
references should use "katana" for consistency.

Changes:
- Update package.json name from katana2 to katana
- Update Vagrantfile paths from katana2 to katana
- Update GitHub URLs from SamuraiWTF/katana2 to SamuraiWTF/katana in:
  - README.md
  - SECURITY.md
  - CHANGELOG.md
  - All documentation files
- Update dev path in src/commands/setup.ts from katana2 to katana

This ensures consistent naming throughout the codebase and
documentation for the unified katana repository.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
The UI build creates embedded-assets.ts which is imported by server.ts.
Type checking must happen after UI build to avoid missing module errors.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
The embedded-assets.ts file is auto-generated and has long lines that
don't need linting. SVG accessibility warnings are non-critical for this
internal dashboard.

Changes:
- Add src/ui/embedded-assets.ts to biome ignore list
- Disable noSvgWithoutTitle accessibility rule
- Revert workflow to standard biome check command

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
E2E tests require Docker, sudo access, port 443 binding, and network
configuration that aren't suitable for GitHub Actions CI environment.

The existing smoke tests (--version, --help) are sufficient to validate
the binary builds and runs correctly. E2E tests should be run manually
in local development environments (Vagrant, etc.) before releases.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Replace push-tag trigger with release:published so binaries are only
built and attached when a release is explicitly published in GitHub UI.

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
Fix release workflow to trigger on published release event
…alled

Moved usermod -aG docker vagrant outside the conditional so it always
runs regardless of whether Docker was already present on the base box.

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
Adds crAPI (Completely Ridiculous API) as a vulnerable API security
training target. Exposes the web UI at crapi.samurai.wtf and the
Mailhog email capture at crapi-mail.samurai.wtf.

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
baseUrl is deprecated in TypeScript 6.0+ and unnecessary when using
moduleResolution: bundler. paths aliases work without it since TS 5.0.

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
@secureideas
secureideas merged commit 1635544 into next Jul 20, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants