Skip to content

Instantly share code, notes, and snippets.

@palaniraja
Last active October 12, 2026 17:11
Show Gist options
  • Select an option

  • Save palaniraja/9c3d03375fe61ef7d7e6e7f216b045e5 to your computer and use it in GitHub Desktop.

Select an option

Save palaniraja/9c3d03375fe61ef7d7e6e7f216b045e5 to your computer and use it in GitHub Desktop.
maki.sh conf
maki.setup({
net = { allowed_private_hosts = { "127.0.0.1:8919" } },
plugins = {
task = { enabled = false },
navigation = { wrap = false },
},
ui = {
splash_animation = false,
mouse_scroll_lines = 5,
tool_output_lines = {
bash = 8,
read = 5,
},
},
agent = {
compaction_buffer = "2%",
},
})
maki.api.register_prompt_hint({
slot = "tool_usage",
content = "- Tool names have NO namespace prefix. Call `grep`, `index`, `read`, etc. exactly as listed, never `functions.grep` or `functions.index`. This applies to the `tool` field inside `batch` too.\n- The system also has `jq`, `rg`, and ast-grep (`ast-grep` / `sg`) installed. Use existing tools for JSON processing, text search, and structural code search before writing or shipping more code than necessary. Prefer the provided tools where required, and follow tool restrictions on file operations.",
})
maki.api.register_prompt_hint({
slot = "tool_usage",
prompt = "system",
content = "At the start of each session, before responding or doing any work, load the ponytail and i-have-adhd skills using the skill tool. Do not reload them if they are already loaded in this session. Follow both skills for the rest of the session unless the user disables them.",
})
maki.api.register_prompt_hint({
slot = "tool_usage",
prompt = "system",
content = 'When calling batch, always provide the required tool_calls parameter as a JSON array, even for one call: {"tool_calls":[{"tool":"grep","parameters":{"pattern":"example"}}]}. Never omit tool_calls or pass an object or string instead of an array.',
})
maki.keymap.set("n", "<C-f>", function()
local view = assert(maki.fn.winsaveview())
assert(maki.fn.winrestview({ topline = view.topline + view.height }))
end, { desc = "Page down" })
maki.keymap.set("n", "<C-b>", function()
local view = assert(maki.fn.winsaveview())
assert(maki.fn.winrestview({ topline = view.topline - view.height }))
end, { desc = "Page up" })
maki.keymap.set("n", "<C-u>", function()
local st = assert(maki.ui.input())
assert(maki.ui.input_edit({
start = 0,
stop = st.cursor,
text = "",
version = st.version,
session_id = st.session_id,
}))
end, { desc = "Delete to start of input" })
maki.keymap.set("n", "<C-d>", function() end)
maki.keymap.set("n", "<Tab>", function() end, { desc = "Disable mode toggle" })
maki.keymap.set("n", "<M-m>", function()
local session, err = maki.session.read()
if not session then
maki.notify(err, "error")
return
end
local mode = session.mode == "plan" and "build" or "plan"
local ok, mode_err = maki.session.set_mode(mode, { session = session.id })
if not ok then
maki.notify(mode_err, "error")
end
end, { desc = "Toggle plan/build mode" })
maki.api.create_autocmd("SessionFocusChanged", {
callback = function()
maki.model.set({ thinking = "adaptive" })
end,
})
require("myproxy")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment