bots-garden/mini-mepublic Fork
⑂ feature/structured-output
Commits
⬇ Clone ▾
git clone https://git.rickub.com/bots-garden/mini-me.git
git clone ssh://git@rickub.com/bots-garden/mini-me.git

Host key fingerprint (ed25519): SHA256:iycHnxEyq0Q7uyVpB7JlznP0G7JrTPXLYRcAU5CSLhc — verify it before your first connect.

Download ZIP
🛟 Updated. 8734926Unverified · on feature/structured-output · k33g · Oct 6, 2026
fetch-a-web-page.md · 65 lines · 3.3 KBmarkdown
Blame HistoryOpen raw

Comment récupérer une page web en Markdown

Ce guide montre comment faire lire une page web au modèle, ou la faire enregistrer dans un fichier, avec l'outil intégré fetch_content. Il suppose que vous lancez déjà mm avec un fichier de configuration.

Étapes

  1. Activez l'outil dans votre fichier de configuration (il est désactivé par défaut) :

    fetchContentTool: true
    
  2. Lancez mm et vérifiez que la bannière de démarrage cite fetch_content parmi les outils.

  3. Demandez la page avec vos mots, dans la langue de votre choix :

    récupère le contenu de https://k33g.org
    
    fetch the content of https://k33g.org
    

    Le terminal affiche 🌐 fetch_content: https://k33g.org, puis les premières lignes du Markdown, et le modèle répond à partir de ce contenu.

Enregistrer la page dans un fichier sans l'afficher

Nommez le fichier et précisez de ne pas l'afficher :

récupère le contenu de https://hello.com mais ne l'affiche pas et sauve le dans hello.txt

Le modèle passe output: hello.txt. Le Markdown est écrit dans hello.txt (relatif au répertoire où tourne mm, ou au projet ouvert dans l'éditeur) et l'outil ne renvoie qu'une ligne :

[fetch_content: saved 9 lines of Markdown (421 bytes) from https://hello.com to hello.txt — the content is not shown]

La page n'entre pas dans la conversation : une page longue n'épuise donc pas la fenêtre de contexte.

Variantes

  • Une URL tapée à la va-vite. k33g.org et https//k33g.org fonctionnent : un schéma manquant devient https://, les deux-points oubliés sont remis.
  • Tableaux complexes. Les tableaux à cellules fusionnées sont gardés en HTML brut par défaut. Demandez des tableaux aplatis (« …en tableaux Markdown, aplatis-les ») et le modèle passe tables: flatten.
  • Texte barré et listes de tâches. Demandez-les explicitement (« garde le texte barré », « garde les cases à cocher ») et le modèle passe strikethrough: true ou taskList: true.
  • Liens relatifs à un autre site. Si la page est un miroir, demandez de résoudre les liens par rapport à l'original ; le modèle passe baseUrl.
  • Avec yolo: false. Lire une page ne demande aucune permission ; l'enregistrer dans un fichier la demande d'abord, comme write_file.

En cas d'échec

Le modèle reçoit [fetch_content: error N (…) — raison] et vous explique en général pourquoi :

  • error 2 (input) : le site est injoignable, a renvoyé une erreur HTTP, ou son robots.txt interdit aux robots de lire cette page. mm ne contourne pas le robots.txt.
  • error 1 (conversion) : l'URL n'est pas une page HTML (un PDF, du JSON, une image) ou dépasse 5 Mio.
  • error 3 (usage) : l'appel lui-même est faux, par exemple une URL ftp://.

Si le modèle utilise curl via bash à la place, l'outil n'est probablement pas déclaré : vérifiez fetchContentTool: true et la bannière.

Voir aussi

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
# Comment récupérer une page web en Markdown

Ce guide montre comment faire lire une page web au modèle, ou la faire enregistrer dans un fichier, avec l'outil intégré `fetch_content`. Il suppose que vous lancez déjà `mm` avec un fichier de configuration.

## Étapes

1. Activez l'outil dans votre fichier de configuration (il est désactivé par défaut) :

   ```yaml
   fetchContentTool: true
   ```

2. Lancez `mm` et vérifiez que la bannière de démarrage cite `fetch_content` parmi les outils.

3. Demandez la page avec vos mots, dans la langue de votre choix :

   ```text
   récupère le contenu de https://k33g.org
   ```

   ```text
   fetch the content of https://k33g.org
   ```

   Le terminal affiche `🌐 fetch_content: https://k33g.org`, puis les premières lignes du Markdown, et le modèle répond à partir de ce contenu.

## Enregistrer la page dans un fichier sans l'afficher

Nommez le fichier et précisez de ne pas l'afficher :

```text
récupère le contenu de https://hello.com mais ne l'affiche pas et sauve le dans hello.txt
```

Le modèle passe `output: hello.txt`. Le Markdown est écrit dans `hello.txt` (relatif au répertoire où tourne `mm`, ou au projet ouvert dans l'éditeur) et l'outil ne renvoie qu'une ligne :

```text
[fetch_content: saved 9 lines of Markdown (421 bytes) from https://hello.com to hello.txt — the content is not shown]
```

La page n'entre pas dans la conversation : une page longue n'épuise donc pas la fenêtre de contexte.

## Variantes

- **Une URL tapée à la va-vite.** `k33g.org` et `https//k33g.org` fonctionnent : un schéma manquant devient `https://`, les deux-points oubliés sont remis.
- **Tableaux complexes.** Les tableaux à cellules fusionnées sont gardés en HTML brut par défaut. Demandez des tableaux aplatis (« …en tableaux Markdown, aplatis-les ») et le modèle passe `tables: flatten`.
- **Texte barré et listes de tâches.** Demandez-les explicitement (« garde le texte barré », « garde les cases à cocher ») et le modèle passe `strikethrough: true` ou `taskList: true`.
- **Liens relatifs à un autre site.** Si la page est un miroir, demandez de résoudre les liens par rapport à l'original ; le modèle passe `baseUrl`.
- **Avec `yolo: false`.** Lire une page ne demande aucune permission ; l'enregistrer dans un fichier la demande d'abord, comme `write_file`.

## En cas d'échec

Le modèle reçoit `[fetch_content: error N (…) — raison]` et vous explique en général pourquoi :

- `error 2 (input)` : le site est injoignable, a renvoyé une erreur HTTP, ou son `robots.txt` interdit aux robots de lire cette page. `mm` ne contourne pas le `robots.txt`.
- `error 1 (conversion)` : l'URL n'est pas une page HTML (un PDF, du JSON, une image) ou dépasse 5 Mio.
- `error 3 (usage)` : l'appel lui-même est faux, par exemple une URL `ftp://`.

Si le modèle utilise `curl` via `bash` à la place, l'outil n'est probablement pas déclaré : vérifiez `fetchContentTool: true` et la bannière.

## Voir aussi

- Chaque champ, règle et code d'erreur : [référence des outils intégrés](../reference/tools.md#fetch_content)
- La clé de configuration : [référence de la configuration](../reference/configuration.md)
- Pourquoi l'outil fonctionne ainsi : [l'outil `fetch_content`](../explanation/fetch-content-tool.md)