{"id":363157,"date":"2026-09-02T10:00:17","date_gmt":"2026-09-02T10:00:17","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/secretaire\/"},"modified":"2026-09-02T14:15:32","modified_gmt":"2026-09-02T14:15:32","slug":"tlloancy-secretaire","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/tlloancy-secretaire\/","author":22011295,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.4","stable_tag":"1.0.4","tested":"7.1","requires":"6.4","requires_php":"7.4","requires_plugins":null,"header_name":"tlloancy Secr\u00e9taire","header_author":"tlloancy","header_description":"The connector writes a paper; you file it. Past is the archive. General papers, or a country\u2019s drawers.","assets_banners_color":"d0c4ac","last_updated":"2026-09-02 14:15:32","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/donorbox.org\/wordpress-plugins","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":42,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"tlloancy","date":"2026-09-02 10:26:57","revision":3677744},"1.0.1":{"tag":"1.0.1","author":"tlloancy","date":"2026-09-02 10:26:57","revision":3677744},"1.0.4":{"tag":"1.0.4","author":"tlloancy","date":"2026-09-02 14:15:32","revision":3678149}},"upgrade_notice":{"1.0.4":"<p>Drafts can include document CSS. Scripts and remote stylesheets stay blocked.<\/p>","1.0.3":"<p>The quill no longer stays busy after the draft is on the paper.<\/p>","1.0.2":"<p>Drafts use only the connectors you checked for this plugin.<\/p>","1.0.1":"<p>Desk styles load again. General papers. Name is tlloancy Secr\u00e9taire.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3677676,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3677676,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3677676,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3677676,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0","1.0.1","1.0.4"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[251511,83,2353,278844,278845],"plugin_category":[],"plugin_contributors":[232640],"plugin_business_model":[],"class_list":["post-363157","plugin","type-plugin","status-publish","hentry","plugin_tags-abilities","plugin_tags-admin","plugin_tags-ai","plugin_tags-paperwork","plugin_tags-qualiopi","plugin_contributors-tlloancy","plugin_committers-tlloancy"],"banners":{"banner":"https:\/\/ps.w.org\/tlloancy-secretaire\/assets\/banner-772x250.png?rev=3677676","banner_2x":"https:\/\/ps.w.org\/tlloancy-secretaire\/assets\/banner-1544x500.png?rev=3677676","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/tlloancy-secretaire\/assets\/icon-128x128.png?rev=3677676","icon_2x":"https:\/\/ps.w.org\/tlloancy-secretaire\/assets\/icon-256x256.png?rev=3677676","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p><strong>tlloancy Secr\u00e9taire<\/strong> is a desk inside wp-admin: the <strong>WordPress AI connector<\/strong> writes a paper, you <strong>file<\/strong> it, and <strong>Past<\/strong> keeps the pile \u2014 search, print, mail, import. That is the difference with a normal chat: the draft is not lost in a thread. No key is stored in this plugin. If no connector is ready, the paper <strong>templates<\/strong> still work.<\/p>\n\n<p><strong>General<\/strong> (the default address) is any document you name: CV, cover letter, minutes, invoice, a letter. A <strong>country<\/strong> adds that place\u2019s drawers (Qualiopi in France, ONSS in Belgium\u2026). Nothing is filed with an authority. You send the paper.<\/p>\n\n<h3>The house<\/h3>\n\n<ul>\n<li><strong>Address<\/strong> (Settings) is General, or a country. General is paperwork with no administration. A country is not copied from France: Belgium has ONSS, Germany the Rundfunkbeitrag, Qu\u00e9bec the SAAQ.<\/li>\n<li><strong>Drawers<\/strong> hold folders. <strong>Papers<\/strong> (General) is one tile: name the folder, write, file. Country drawers are that address\u2019s pains (Qualiopi only in France; Hacienda only in Spain).<\/li>\n<li><strong>Folders<\/strong> historize who \/ what \/ when. A ticket folder can open a linked Justice folder.<\/li>\n<li><strong>Import<\/strong> on Past is the backup: HTML, text, PDF, or a ZIP of papers you already have.<\/li>\n<\/ul>\n\n<h3>Training \/ Qualiopi<\/h3>\n\n<p>Quote, needs analysis, attendance sheet, certificate, quiz, dated <strong>watch proof<\/strong>, accessibility mentions. You file the RNQ (or another notice) on the drawer; nothing is fetched from the public web.<\/p>\n\n<h3>WordPress AI<\/h3>\n\n<p>Uses <code>wp_supports_ai()<\/code> \/ <code>wp_ai_client_prompt()<\/code>. Choose the connector under <strong>Settings \u2192 Connectors<\/strong>. Abilities: <code>secretaire\/list-drawers<\/code>, <code>secretaire\/list-folders<\/code>, <code>secretaire\/draft-paper<\/code>.<\/p>\n\n<p>Guides: <code>docs\/USER-GUIDE.md<\/code> (EN) and <code>docs\/MODE-DEMPLOI.md<\/code> (FR).<\/p>\n\n<h3>External services<\/h3>\n\n<p>When a <strong>WordPress AI connector<\/strong> is active, prompts, folder notes, and any working papers you filed on a drawer are sent to <strong>that<\/strong> provider (the one you configured). This plugin does not pick a vendor. It does not request third-party websites.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>tlloancy-secretaire<\/code> folder to <code>\/wp-content\/plugins\/<\/code>.<\/li>\n<li>Activate <strong>tlloancy Secr\u00e9taire<\/strong>.<\/li>\n<li>Open the <strong>tlloancy Secr\u00e9taire<\/strong> menu. On <strong>General<\/strong>, name a paper and file it \u2014 or pick a country for that address\u2019s drawers.<\/li>\n<li>Optional: <strong>Settings \u2192 Connectors<\/strong> \u2014 install the AI plugin if needed, add a connector, then use <strong>Ask the connector<\/strong> on a folder.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"how%20is%20this%20different%20from%20chatting%20with%20the%20ai%20connector%3F\"><h3>How is this different from chatting with the AI connector?<\/h3><\/dt>\n<dd><p>The connector writes. This desk <strong>files<\/strong> the draft in a dated folder. <strong>Past<\/strong> is the archive: search, print, mail, import. A chat does not keep that pile.<\/p><\/dd>\n<dt id=\"what%20is%20general%3F\"><h3>What is General?<\/h3><\/dt>\n<dd><p>No country. One drawer for any paper you name (CV, letter, minutes\u2026). <strong>Import<\/strong> files you already have. Pick a country in Settings when you need that place\u2019s offices.<\/p><\/dd>\n<dt id=\"do%20i%20need%20an%20ai%20connector%3F\"><h3>Do I need an AI connector?<\/h3><\/dt>\n<dd><p>No. Every paper has a template. The connector fills it from your notes.<\/p><\/dd>\n<dt id=\"where%20do%20i%20put%20an%20api%20key%3F\"><h3>Where do I put an API key?<\/h3><\/dt>\n<dd><p>Not here. <strong>Settings \u2192 Connectors<\/strong>, on the WordPress AI plugin.<\/p><\/dd>\n<dt id=\"why%20did%20it%20call%20a%20connector%20i%20did%20not%20check%3F\"><h3>Why did it call a connector I did not check?<\/h3><\/dt>\n<dd><p>It must not. <strong>Connector Approvals<\/strong> is the list for this plugin. Only checked cards are used. Unchecked cards (a dead Compatible Endpoint, Ollama, OpenRouter\u2026) are skipped.<\/p><\/dd>\n<dt id=\"the%20connector%20replies%20with%20nothing%2C%20or%20takes%20a%20minute\"><h3>The connector replies with nothing, or takes a minute<\/h3><\/dt>\n<dd><p>That is a <strong>connector<\/strong> setting, not tlloancy Secr\u00e9taire. Open <strong>Settings \u2192 Connectors<\/strong>, edit the OpenAI-compatible (or Ollama) card, and turn on <strong>Disable thinking<\/strong>. Context length lives there too. If the draft is still empty, file the <strong>template<\/strong>.<\/p><\/dd>\n<dt id=\"ask%20finished%20but%20file%20stays%20grey\"><h3>Ask finished but File stays grey<\/h3><\/dt>\n<dd><p>The draft is on the paper; File and Ask must unlock. Update to 1.0.3 if the quill stays on \u201cwriting\u201d.<\/p><\/dd>\n<dt id=\"can%20the%20connector%20style%20the%20paper%3F\"><h3>Can the connector style the paper?<\/h3><\/dt>\n<dd><p>Yes. The draft may include a <code>&lt;style&gt;<\/code> block for that document (letterhead, table, totals). Scripts, remote fonts, <code>@import<\/code>, and external stylesheets are stripped. Plugin CSS stays in files (<code>paper.css<\/code>) and is printed through WordPress. The brief is still facts; you may mention a look (invoice, letter) if you want.<\/p><\/dd>\n<dt id=\"is%20this%20legal%20or%20tax%20advice%3F\"><h3>Is this legal or tax advice?<\/h3><\/dt>\n<dd><p>No. Drafts to edit. Deadlines and official texts are yours to check.<\/p><\/dd>\n<dt id=\"will%20other%20countries%20appear%3F\"><h3>Will other countries appear?<\/h3><\/dt>\n<dd><p><strong>General<\/strong> ships first. Belgium, Switzerland, Germany, Spain, Italy, the United Kingdom, the United States, and Canada (Qu\u00e9bec) ship with France. Pick the address under Settings.<\/p><\/dd>\n<dt id=\"how%20do%20i%20write%20a%20quote%3F\"><h3>How do I write a quote?<\/h3><\/dt>\n<dd><p>Open <strong>Training<\/strong>. Click <strong>Quote<\/strong>. You land on the folder. <strong>New folder<\/strong> is only for another session.<\/p><\/dd>\n<dt id=\"where%20was%20i%3F\"><h3>Where was I?<\/h3><\/dt>\n<dd><p><strong>Desk<\/strong> shows the drawer vignettes. The last drawer stays marked. Folders remember the last paper. Opening a paper and going back to the desk stays on the same page.<\/p><\/dd>\n<dt id=\"can%20i%20import%20papers%20or%20a%20whole%20folder%3F\"><h3>Can I import papers or a whole folder?<\/h3><\/dt>\n<dd><p>Yes. <strong>Past \u2192 Import<\/strong>. HTML, text, PDF, or a <strong>ZIP<\/strong>. On the desk, a ZIP becomes a folder; loose files become a new folder. Inside a folder, files (and ZIP contents) become papers.<\/p><\/dd>\n<dt id=\"how%20do%20i%20know%20what%20a%20folder%20still%20needs%3F\"><h3>How do I know what a folder still needs?<\/h3><\/dt>\n<dd><p>Open the folder. <strong>Past<\/strong> lists each expected paper as <strong>Filed<\/strong> or <strong>Missing<\/strong>. The desk shows <strong>Complete<\/strong> or the missing names on each folder. File a <strong>rule<\/strong> on the drawer (latest RNQ for Training, a BOFIP page for Taxes\u2026) so the list follows your text. Without a file, the built-in papers are used.<\/p><\/dd>\n<dt id=\"how%20do%20i%20send%20or%20destroy%20a%20filed%20paper%3F\"><h3>How do I send or destroy a filed paper?<\/h3><\/dt>\n<dd><p>In <strong>Past<\/strong>: <strong>Send<\/strong> on a paper mails that sheet (body + PDF). <strong>Send<\/strong> on a folder (envelope mark) mails the whole chemise \u2014 the list in the body, one PDF per filed paper. <strong>Shred<\/strong> (shredder mark) deletes that one paper or folder. <strong>Fireplace<\/strong> (hearth mark) burns the whole pile \u2014 every paper in the folder, or every folder in the drawer. A hint under each mark says which. Permanent, no trash.<\/p><\/dd>\n<dt id=\"is%20the%20admin%20in%20french%3F\"><h3>Is the admin in French?<\/h3><\/dt>\n<dd><p>The source language is English. Every UI string is gettext (<code>tlloancy-secretaire<\/code>). A complete <strong>French<\/strong> catalog ships in <code>languages\/<\/code>. Set the site language to Fran\u00e7ais (<code>fr_FR<\/code>). If a leftover <code>wp-content\/languages\/plugins\/tlloancy-secretaire-fr_FR.*<\/code> is mixed English\/French, delete those files and reload.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>Ask may lay out the paper with a sanitized <code>&lt;style&gt;<\/code> block (no scripts, no remote CSS). Desk and print keep a paper stylesheet in plugin files.<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>After Ask finishes, the quill stops and File \/ Ask work again. A late job poll no longer freezes the form on \u201cwriting\u201d.<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Ask the connector only on cards <strong>checked<\/strong> for this plugin in Connector Approvals. Unchecked providers are never called.<\/li>\n<li>Fix: Ask actually calls Google. A <code>method_exists<\/code> check skipped the AI client\u2019s magic methods and always fell back to the template.<\/li>\n<li>Admin menu icon is a 20px silhouette so it stays sharp on the dark menu.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Fix: desk CSS and JS load on the admin screens (menu slug is still <code>secretaire<\/code>). Icons stay 24px.<\/li>\n<li>General address: any paper you name (CV, letter, minutes\u2026). Import stays the backup.<\/li>\n<li>Display name <strong>tlloancy Secr\u00e9taire<\/strong>. Connector readiness uses the public AI API only.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Desk: France drawers, folders, print, connector drafts, abilities.<\/li>\n<li>Country packs: BE, CH, DE, ES, IT, GB, US, CA (Qu\u00e9bec) \u2014 each with its own offices and papers.<\/li>\n<li>English source strings, French translation (<code>languages\/tlloancy-secretaire-fr_FR<\/code>).<\/li>\n<\/ul>","raw_excerpt":"A home desk for paperwork. The connector writes; you file. Past is the dated archive.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/363157","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=363157"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/tlloancy"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=363157"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=363157"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=363157"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=363157"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=363157"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=363157"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}