Skip to content

Releases: dotcommander/jinn

v0.8.0

30 Apr 21:18

Choose a tag to compare

v0.7.0

30 Apr 20:47

Choose a tag to compare

Full Changelog: v0.6.2...v0.7.0

v0.6.2

29 Apr 05:05

Choose a tag to compare

Full Changelog: v0.6.1...v0.6.2

v0.6.1

24 Apr 01:12

Choose a tag to compare

Full Changelog: v0.6.0...v0.6.1

v0.6.0

23 Apr 21:41

Choose a tag to compare

Full Changelog: v0.5.0...v0.6.0

v0.5.0

22 Apr 23:58

Choose a tag to compare

Full Changelog: v0.4.0...v0.5.0

v0.4.0

22 Apr 22:47

Choose a tag to compare

Full Changelog: v0.3.2...v0.4.0

v0.3.2

19 Apr 00:06

Choose a tag to compare

Full Changelog: v0.3.1...v0.3.2

v0.3.1

15 Apr 14:35

Choose a tag to compare

What's Changed

Fixed

  • TTY detection: bare jinn now prints help and exits cleanly instead of blocking on stdin when no input is piped
  • Environment whitelist: shell subprocesses only receive PATH, HOME, and LANG — no host secrets leak to child processes

Full Changelog: v0.2.0...v0.3.1

v0.2.0

08 Apr 23:01

Choose a tag to compare

Changes

Security

  • Symlink escape fix (CRITICAL): checkPath now calls filepath.EvalSymlinks before the workDir boundary check, closing a path traversal vector via symlinks. New() also resolves the workDir itself via EvalSymlinks (fixes macOS /var/private/var test failures as a side effect).

Features

  • list_tools tool: 9th tool returns the full schema JSON in-protocol — agents can discover capabilities without a separate --schema invocation.
  • --help / -h flag: prints usage with examples.

Improvements

  • Tool error semantics: all 8 tool methods now return (string, error). Errors produce ok: false + exit 1 instead of embedding error text in a ok: true result 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 in security.go (filepath.Clean already handles it).