Ultima attività 17 hours ago

Funciones para el episodio 824: aresumen (fd+rg+Ollama) y rfb (rg+fzf+bat). atareao.es

atareao's Avatar atareao ha revisionato questo gist 17 hours ago. Vai alla revisione

2 files changed, 92 insertions

aresumen.sh(file creato)

@@ -0,0 +1,65 @@
1 + #!/usr/bin/env bash
2 + # aresumen — busca en notas .md y pregunta a Ollama
3 + # Episodio 824 — atareao con Linux
4 + #
5 + # Uso: aresumen <concepto>
6 + # Requiere: fd, rg, jq, Ollama (http://localhost:11434)
7 +
8 + # Aliases básicos
9 + alias f='fd'
10 + alias rg='rg --smart-case'
11 + alias rga='rg -uuu' # Búsqueda nuclear
12 +
13 + # Función 1: buscar en notas Markdown
14 + buscar_notas() {
15 + local patron="$1"
16 + fd -e md -X rg -C 2 --smart-case "$patron"
17 + }
18 + # Uso: buscar_notas ollama
19 +
20 + # Función 2: buscar por extensión y texto
21 + btexto() {
22 + local ext="$1"
23 + local texto="$2"
24 + fd -e "$ext" -X rg --smart-case "$texto"
25 + }
26 + # Uso: btexto py "def test_"
27 +
28 + # Función 3: aresumen — el pipeline IA completo
29 + # Busca contexto en tus notas y lo envía a Ollama
30 + aresumen() {
31 + local concepto="$1"
32 + if [ -z "$concepto" ]; then
33 + echo "Uso: aresumen <concepto>"
34 + return 1
35 + fi
36 + local contexto
37 + contexto=$(fd -e md -X rg -C 5 "$concepto" 2>/dev/null)
38 + if [ -z "$contexto" ]; then
39 + echo "No se encontró información sobre: $concepto"
40 + return 1
41 + fi
42 + echo "$contexto" | curl -s http://localhost:11434/api/generate \
43 + -d "{\"model\": \"llama3.2\",
44 + \"prompt\": \"Resume el siguiente contenido sobre $concepto:\n$(cat)\n\",
45 + \"stream\": false}" \
46 + | jq -r '.response'
47 + }
48 + # Uso: aresumen fd
49 +
50 + # Función 4: rfb — buscador interactivo (rg + fzf + bat)
51 + # Como vimos en el episodio 810
52 + rfb() {
53 + if [ -z "$1" ]; then
54 + echo "Uso: rfb <texto_a_buscar>"
55 + return 1
56 + fi
57 + rg --line-number --no-heading --color=always --smart-case "$1" | \
58 + fzf --ansi \
59 + --color="ansi" \
60 + --delimiter=":" \
61 + --preview="bat --color=always --highlight-line={2} {1}" \
62 + --preview-window="right:60%:wrap" \
63 + --bind="enter:become(${EDITOR:-nano} +{2} {1})"
64 + }
65 + # Uso: rfb ollama — busca, previsualiza con bat, abre editor en la línea exacta

pregunta.fish(file creato)

@@ -0,0 +1,27 @@
1 + # pregunta — versión Fish del pipeline IA
2 + # Episodio 824 — atareao con Linux
3 + #
4 + # Uso: pregunta <texto>
5 + # Requiere: fd, rg, jq, Ollama
6 +
7 + # Aliases básicos para Fish
8 + alias f "fd"
9 + alias rg "rg --smart-case"
10 + alias rga "rg -uuu"
11 +
12 + # Función principal: pregunta a tus notas
13 + function pregunta
14 + if test (count $argv) -eq 0
15 + echo "Uso: pregunta <texto>"
16 + return 1
17 + end
18 + set contexto (fd -e md -X rg -C 5 $argv[1] 2>/dev/null)
19 + if test -z "$contexto"
20 + echo "No encontré información sobre: $argv[1]"
21 + return 1
22 + end
23 + echo $contexto | curl -s http://localhost:11434/api/generate \
24 + -d "{\"model\": \"llama3.2\", \"prompt\": \"Contexto:\n$(cat)\n\nBasándote en el contexto, responde: $argv[1]\", \"stream\": false}" \
25 + | jq -r '.response'
26 + end
27 + # Uso: pregunta "¿qué es fd?"
Più nuovi Più vecchi