At the moment is hactar is distributed solely through git. You can install it using straight:
(use-package hactar :straight '(hactar :type git :host github :repo "hactar-project/hactar.el"))Hactar search function return things as the hactar category and come with some built in actions.
Will insert the selected doc as src blocks at point
Insert the selected doc at point
Copy the selected doc into the kill ring
Send the doc at point as context to the current Hactar instance.
The shell to use for hactar instances.
comint
vterm
eshell
The variable that contains the current context. Context gets added to the system prompt.
Contains the folder path to the project so that src blocks have the correct path. When not set defaults to projectile-project-root
The default path for the sqlite DB that hactar users. Default
The path to the hactar-repo. Defaults ot the environment variable HACTAR_CONTENT_PATH
Run a hactar instance in comint, vterm, or eshell instance depending on the valuue of hactar-shell
With C-u get prompted to edit arguments passed to hactar.
A wrapper around hactar-run that sets the sonnet model as default
A wrapper around hactar-run that sets the deepseek model as default.
A wrapper around hactar-run that sets the gemini model as default.
A wrapper around hactar-run that sets the gemini flash model as default.
A wrapper around hactar-run that sets the gpt5 model as default.
A wrapper around hactar-run that sets the gpt5 model as default.
A wrapper around hactar-run that sets the o3-mini model as default.
Run a new hactar instance and pass it the create command.
WIll do the following:
Launch a new
hactar-lit-modebufferThis buffer becomes your context
Call
hactar-insert-starterand allow you to select a starter to insert at pointRuns
hactar-runand attaches the instance to the buffer
Send the context at point to the current hactar instance in a DWIM fashion.
If in a headline it assumes everything up to the parent should be sent as the prompt
If on a headline then everything below it is sent as the prompt.
The current buffer by default
Hit
C-u hactar-lit-sendand the context at point will become part of the system prompt and you will be prompted to enter a prompt.Hit
C=u 1 hactar-lit-sendto edit the system prompt/context before sending it.
Send the current buffer's content as context to the Hactar instance.
Send the current buffer's content as context to the Hactar instance.
Send a command to the current hactar instance. Will popup a list of all commands in hactar and let you select one via completing-read.
Search API docs, api references, and starters. The default is to open the file to the headline (all stuff in Hactar is org-mode files)
Actions:
RET(default): Open the selected doc in a new buffer.Insert the doc at point using
hactar-action-insert.Insert the doc as source blocks using
hactar-action-insert-as-src-blocks.Yank the doc into the kill-ring using
hactar-action-yank.Send the doc as context using
hactar-action-send.
Search documentation. Excludes API, starters, etc.
Actions:
RET(default): Open the selected doc in a new buffer.Insert the doc at point using
hactar-action-insert.Insert the doc as source blocks using
hactar-action-insert-as-src-blocks.Yank the doc into the kill-ring using
hactar-action-yank.Send the doc as context using
hactar-action-send.
Search API documentation.
Actions:
RET(default): Open the selected doc in a new buffer.Insert the doc at point using
hactar-action-insert.Insert the doc as source blocks using
hactar-action-insert-as-src-blocks.Yank the doc into the kill-ring using
hactar-action-yank.Send the doc as context using =hactar
Search starter kits.
Actions:
RET(default): Open the selected doc in a new buffer.Insert the doc at point using
hactar-action-insert.Insert the doc as source blocks using
hactar-action-insert-as-src-blocks.Yank the doc into the kill-ring using
hactar-action-yank.Send the doc as context using
hactar-action-send.
Search cheatsheets
Actions:
RET(default): Open the selected doc in a new buffer.Insert the doc at point using
hactar-action-insert.Insert the doc as source blocks using
hactar-action-insert-as-src-blocks.Yank the doc into the kill-ring using
hactar-action-yank.Send the doc as context using
hactar-action-send.
Insert the selected the documentation at point. A doc is a org-mode headline
Search documentation and insert the selection at point.
Search API references and insert the selection at point.
Search starters and insert the selection at point.
Select a file from the Hactar content repo and insert its contents at point.
Select a file from the Hactar content repo and insert its contents wrapped in a source block.
Update the hactar content repo
A wrapper function around hactar-insert. It is a DWIM function
If dired files are in the kill ring then insert the files as org src blocks at point (if in org-buffer)
if not in an org-buffer insert the files contents on after another
Default to calling
hactar-insert
Send the current buffer as the prompt to the create command to a hactar instance
A wrapper mode that uses shell-maker