Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
7b248ff
Add SRT sandbox integration to ellama-tools
s-kostyaev Feb 25, 2026
44068d8
Add srt integration to the documentation
s-kostyaev Feb 25, 2026
49c8ba6
Remove apply_patch tool and tests
s-kostyaev Feb 25, 2026
f396a9b
Add SRT policy checks and integration tests
s-kostyaev Feb 26, 2026
ca89e66
Add SRT path normalization helpers and comprehensive integration tests
s-kostyaev Feb 26, 2026
de44663
Add SRT Filesystem Policy documentation and update tool config descri…
s-kostyaev Feb 26, 2026
4cd60f0
Change file access checks to return error messages instead of raising…
s-kostyaev Feb 26, 2026
e0c4cfa
fix linter warnings
s-kostyaev Feb 26, 2026
4a1c5e8
Avoid Org version mismatch warnings in tests
s-kostyaev Feb 26, 2026
6356d64
Fix build and manual targets configuration
s-kostyaev Feb 26, 2026
de549b2
Add missing dockerfile for srt integration testing
s-kostyaev Feb 26, 2026
09ec51c
Add DLP implementation plan for sensitive data protection
s-kostyaev Feb 26, 2026
63a45bd
Implement DLP layer
s-kostyaev Feb 26, 2026
732eab4
Add DLP to the documentation
s-kostyaev Feb 26, 2026
52f9811
Fix linter warnings
s-kostyaev Feb 26, 2026
a02a694
Add function handling to incident sanitization
s-kostyaev Feb 26, 2026
346af84
Add built-in DLP rules for shell command secrets
s-kostyaev Feb 27, 2026
1cb2a30
Add prompt‑injection detection and configurable output‑warning handling
s-kostyaev Feb 27, 2026
829d2c0
Add view option for DLP output warnings
s-kostyaev Feb 27, 2026
3248838
Add tool call logging and tests
s-kostyaev Feb 27, 2026
a0c1bd6
Refactor ellama buffer handling and add comprehensive tests
s-kostyaev Mar 15, 2026
4c10423
Add per-tool output line budget guard
s-kostyaev Mar 17, 2026
892b923
Fix compile warnings
s-kostyaev Mar 17, 2026
c82d00d
Add integration tests and docstring checking targets
s-kostyaev Mar 18, 2026
edc6570
Fix linter warnings
s-kostyaev Mar 18, 2026
a733283
Implement LLM-based safety checks
s-kostyaev Mar 18, 2026
78c326b
add irreversible actions checks implementation plan
s-kostyaev Mar 18, 2026
3019871
Implement irreversible action safety scaffolding
s-kostyaev Mar 18, 2026
9736231
Implement irreversible safety phase completion
s-kostyaev Mar 18, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,10 @@
2. **Run unit tests** (ERT): `make test`
If it fails, run `make test-detailed` to see fail reasons.
3. **Check native compilation warnings**: `make check-compile-warnings`
4. **Format Elisp files**: `make format-elisp`
5. **Export manual**: `make manual`
6. **Refill readme**: `make refill-readme`
4. **Check docstrings and style docs**: `make checkdocs`
5. **Format Elisp files**: `make format-elisp`
6. **Export manual**: `make manual`
7. **Refill readme**: `make refill-readme`

## Code Style Guidelines

Expand Down
56 changes: 52 additions & 4 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,9 +1,14 @@
# Makefile for ellama project

.PHONY: build test test-detailed check-compile-warnings manual format-elisp refill-news refill-readme
.PHONY: build test test-detailed test-integration test-srt-integration docker-build-srt-parity test-srt-integration-linux check-compile-warnings checkdocs manual format-elisp refill-news refill-readme

SRT_PARITY_DOCKER_IMAGE ?= ellama-srt-parity:latest
SRT_PARITY_DOCKERFILE ?= docker/srt-parity-linux.Dockerfile
SRT_PARITY_DOCKER_RUN_FLAGS ?= --rm --privileged

# This order is based on the packages dependency graph.
ELLAMA_COMPILE_ORDER = \
ellama-tools-dlp.el \
ellama-tools.el \
ellama-skills.el \
ellama.el \
Expand All @@ -14,14 +19,22 @@ ELLAMA_COMPILE_ORDER = \
ellama-manual.el

build:
emacs -batch --eval "(package-initialize)" -f batch-byte-compile ellama*.el
emacs -batch \
--eval "(package-initialize)" \
--eval "(require 'cl-lib)" \
--eval "(setq load-path (cl-remove-if (lambda (dir) (string-match-p \"/elpa/org-[^/]+/?$$\" dir)) (cons (expand-file-name \".\") load-path)))" \
-f batch-byte-compile ellama*.el

test:
emacs -batch --eval "(package-initialize)" \
emacs -Q -batch \
--eval "(package-initialize)" \
--eval "(require 'cl-lib)" \
--eval "(setq load-path (cl-remove-if (lambda (dir) (string-match-p \"/elpa/org-[^/]+/?$$\" dir)) load-path))" \
-l ellama.el \
-l tests/test-ellama.el \
-l tests/test-ellama-context.el \
-l tests/test-ellama-tools.el \
-l tests/test-ellama-tools-dlp.el \
-l tests/test-ellama-skills.el \
-l tests/test-ellama-transient.el \
-l tests/test-ellama-blueprint.el \
Expand All @@ -30,11 +43,15 @@ test:
--eval "(ert t)"

test-detailed:
emacs -batch --eval "(package-initialize)" \
emacs -Q -batch \
--eval "(package-initialize)" \
--eval "(require 'cl-lib)" \
--eval "(setq load-path (cl-remove-if (lambda (dir) (string-match-p \"/elpa/org-[^/]+/?$$\" dir)) load-path))" \
-l ellama.el \
-l tests/test-ellama.el \
-l tests/test-ellama-context.el \
-l tests/test-ellama-tools.el \
-l tests/test-ellama-tools-dlp.el \
-l tests/test-ellama-skills.el \
-l tests/test-ellama-transient.el \
-l tests/test-ellama-blueprint.el \
Expand All @@ -43,12 +60,43 @@ test-detailed:
--eval "(setq ert-batch-backtrace-right-margin 200)" \
--eval "(ert-run-tests-batch-and-exit t)"

test-integration:
emacs -Q -batch \
--eval "(package-initialize)" \
--eval "(require 'cl-lib)" \
--eval "(setq load-path (cl-remove-if (lambda (dir) (string-match-p \"/elpa/org-[^/]+/?$$\" dir)) load-path))" \
-l ellama.el \
-l tests/integration-test-ellama.el \
--eval "(ert t)"

test-srt-integration:
ELLAMA_SRT_INTEGRATION=1 emacs -batch --eval "(package-initialize)" \
-l tests/test-ellama-tools-srt-integration.el \
--eval "(ert-run-tests-batch-and-exit \"test-ellama-tools-srt-integration-\")"

docker-build-srt-parity:
docker build -t $(SRT_PARITY_DOCKER_IMAGE) -f $(SRT_PARITY_DOCKERFILE) .

test-srt-integration-linux: docker-build-srt-parity
docker run $(SRT_PARITY_DOCKER_RUN_FLAGS) \
-v $(CURDIR):/work \
-w /work \
$(SRT_PARITY_DOCKER_IMAGE) \
make test-srt-integration

check-compile-warnings:
emacs --batch --eval "(package-initialize)" --eval "(setq native-comp-eln-load-path (list default-directory))" -L . -f batch-native-compile $(ELLAMA_COMPILE_ORDER)

checkdocs:
emacs -Q -batch \
--eval "(require 'checkdoc)" \
--eval "(let* ((files (append (file-expand-wildcards \"ellama*.el\") (file-expand-wildcards \"tests/*.el\"))) (checkdoc-autofix-flag 'never) (checkdoc-diagnostic-buffer \"*ellama checkdoc errors*\") (issues 0)) (dolist (file files) (with-current-buffer (find-file-noselect file) (checkdoc-current-buffer t))) (when (get-buffer checkdoc-diagnostic-buffer) (with-current-buffer checkdoc-diagnostic-buffer (goto-char (point-min)) (while (re-search-forward \"^\\\\(.*\\\\):\\\\([0-9]+\\\\): \\\\(.*\\\\)$$\" nil t) (setq issues (1+ issues)) (princ (format \"%s:%s: %s\\n\" (match-string 1) (match-string 2) (match-string 3))))) (kill-buffer checkdoc-diagnostic-buffer)) (if (> issues 0) (progn (princ (format \"checkdocs: %d issue(s)\\n\" issues)) (kill-emacs 1)) (princ \"checkdocs: OK\\n\")))"

manual:
emacs -batch --eval "(package-initialize)" \
--eval "(require 'project)" \
--eval "(require 'cl-lib)" \
--eval "(setq load-path (cl-remove-if (lambda (dir) (string-match-p \"/elpa/org-[^/]+/?$$\" dir)) load-path))" \
-l ellama-manual.el \
--eval "(ellama-manual-export)"

Expand Down
Loading
Loading