Releases: dotcommander/jinn
Releases · dotcommander/jinn
v0.8.0
Full Changelog: v0.7.0...v0.8.0
v0.7.0
Full Changelog: v0.6.2...v0.7.0
v0.6.2
Full Changelog: v0.6.1...v0.6.2
v0.6.1
Full Changelog: v0.6.0...v0.6.1
v0.6.0
Full Changelog: v0.5.0...v0.6.0
v0.5.0
Full Changelog: v0.4.0...v0.5.0
v0.4.0
Full Changelog: v0.3.2...v0.4.0
v0.3.2
Full Changelog: v0.3.1...v0.3.2
v0.3.1
What's Changed
Fixed
- TTY detection: bare
jinnnow prints help and exits cleanly instead of blocking on stdin when no input is piped - Environment whitelist: shell subprocesses only receive
PATH,HOME, andLANG— no host secrets leak to child processes
Full Changelog: v0.2.0...v0.3.1
v0.2.0
Changes
Security
- Symlink escape fix (CRITICAL):
checkPathnow callsfilepath.EvalSymlinksbefore the workDir boundary check, closing a path traversal vector via symlinks.New()also resolves the workDir itself viaEvalSymlinks(fixes macOS/var→/private/vartest failures as a side effect).
Features
list_toolstool: 9th tool returns the full schema JSON in-protocol — agents can discover capabilities without a separate--schemainvocation.--help/-hflag: prints usage with examples.
Improvements
- Tool error semantics: all 8 tool methods now return
(string, error). Errors produceok: false+ exit 1 instead of embedding error text in aok: trueresult string. - Better JSON error messages: EOF gets a friendly "no input: pipe a JSON request to stdin (try jinn --help)" message; parse errors are prefixed with
"invalid JSON:". - Hardened EOF check: uses
errors.Is(err, io.EOF)instead of string comparison. - Removed dead code: dead
..guard insecurity.go(filepath.Clean already handles it).