Converti (AetherOS): Difference between revisions

From OODA WIKI
Jump to navigation Jump to search
AdminIsidore (talk | contribs)
Created page with "{{AetherOS_Component}} '''Converti''' is a command-line utility designed to import articles from external wikis, such as Wikipedia, and intelligently prepare them for use within the AetherOS ecosystem. It serves as a gatekeeper, ensuring that new information is clean, functional, and structurally sound before it becomes a source of knowledge for both human users and their Wingman AIs. The tool was developed by Isidore Lands and Silas..."
 
Converti (talk | contribs)
No edit summary
 
(One intermediate revision by one other user not shown)
Line 1: Line 1:
{{AetherOS_Component}}
{{AetherOS_Component}}
'''Converti''' is a command-line utility designed to import articles from external wikis, such as Wikipedia, and intelligently prepare them for use within the AetherOS ecosystem. It serves as a gatekeeper, ensuring that new information is clean, functional, and structurally sound before it becomes a source of knowledge for both human users and their [[Wingman AI|Wingman AIs]].
'''Converti''' is a command-line utility suite designed to manage the lifecycle of templates and modules within the AetherOS ecosystem. It serves as the primary toolkit for the [[Collegium (AetherOS)]], enabling the analysis, controlled importation, and quality assurance of the wiki's structural components.


The tool was developed by [[User:AdminIsidore|Isidore Lands]] and Silas Corvus.
The tool was developed by [[User:Isidore Lands|Isidore Lands]] and [[User:Silas Corvus|Silas Corvus]].


== Purpose in Symbiotic Learning ==
== Purpose in Symbiotic Learning ==
The core purpose of Converti is to support the symbiotic learning relationship between a user and their Wingman AI. Raw, unformatted text from external sources can contain broken templates, irrelevant maintenance tags, and visual media that can confuse a learning model.
The core purpose of Converti is to ensure the structural integrity and maneuverability of the wiki's knowledge base. A lean, well-documented, and minimally dependent codebase is essential for the symbiotic learning between users and their [[Wingman AI|Wingman AIs]].


Converti sanitizes this content, creating a clean textual baseline that is optimized for machine readability and comprehension. By ensuring the structural integrity of imported knowledge, it prevents the Wingman from learning from "broken" or incomplete data.
By providing tools to analyze and gracefully import components, Converti prevents "dependency hell" and ensures the wiki does not become cluttered with the unmanaged complexity of its source wikis.


== Core Functionality ==
== The Converti Toolkit ==
Converti is a Python script that uses the [[Pywikibot]] framework to perform a multi-stage import and cleaning process.
Converti is comprised of a single command-line interface (main.py) that provides several commands, each serving a specific function in the Collegium's review process.


=== Stage 1: Content Cleaning ===
=== Stage 1: Map Dependencies ===
When an article is imported, Converti first performs two cleaning passes on the wikitext:
The first step is to map the full dependency tree of a set of root templates from a source wiki (like Wikipedia) to a named JSON file.
# '''Image Removal''': All file links (e.g., `[[File:...]]`) and gallery tags (`<gallery>`) are stripped from the text. This focuses the content on pure text, which is the primary medium for the Wingman AI.
# '''Template Reformatting''': Common Wikipedia-specific maintenance templates (e.g., `{{cleanup}}`, `{{unreferenced}}`) are removed, as they are not relevant to the local wiki's context.


=== Stage 2: Recursive Dependency Resolution ===
'''map command''': Scans a list of templates on a specified source wiki (--source-family) and recursively maps every sub-template and Lua module they depend on. The result is saved to a specified output file (--output).
After cleaning the text, Converti scans the article for all required [[Templates]] and [[Lua|Modules]].
# It checks if each dependency exists on the local wiki.
# If a dependency is missing and its corresponding local page is empty, Converti automatically imports it from the source wiki (Wikipedia).
# This process is '''recursive'''; the script then checks the newly imported dependency for its own dependencies and adds them to an import queue. This continues until all required components are present.
# To ensure safety, Converti will '''not''' overwrite any template or module that already has content, preserving any local customizations.


=== Stage 3: Reporting ===
=== Stage 2: Audit & Analyze ===
Upon completion, the script generates a detailed report listing all the dependencies it successfully imported and any it skipped because they already existed.
The second step is to analyze the generated dependency map to assess its technical debt.


== Usage ==
'''audit command''': Ingests a dependency map (--map-file) and generates a human-readable report (dependency_report.txt) and an interactive graph (dependency_graph.html). This command calculates a '''[[Wiki Maneuverability Score]]''' for each component based on its complexity, dependency count, and documentation quality, highlighting the most foundational and complex pages.
Converti is run from the command line. The user specifies the title of the page to import.
 
<syntaxhighlight lang="bash">
=== Stage 3: Deploy to Wiki ===
# Example: Import the "OODA loop" article from Wikipedia
After the Collegium has reviewed the analysis and created a curated approved_list.txt, this command imports only the necessary components to the target wiki.
python scripts/wiki_importer.py --page "OODA_loop"
 
</syntaxhighlight>
'''deploy command''': Reads the approved list and a dependency map. It then resolves the full dependency tree and surgically imports only the required pages from the source wiki to the target (ooda.wiki), skipping any that already exist. A --dry-run flag allows for simulating the deployment without making any edits.


== Future Development ==
== Future Development ==
* '''Active Voice Assistant''': Functionality is being developed to create a human-in-the-loop tool that will identify passive voice sentences in an article and allow an editor to convert them to active voice, further improving clarity and readability.
 
'''refactor command''': (Under Development) An assistant that uses an LLM to review low-scoring templates and suggest simplifications or alternative implementations.
 
'''Active Voice Assistant''': An on-wiki tool to help editors convert passive voice to active voice, further improving the clarity and readability of the knowledge base.

Latest revision as of 06:37, 15 August 2025

This page describes a core component of the AetherOS ecosystem. Its structure and content are designed to be parsed by automated agents.

Converti is a command-line utility suite designed to manage the lifecycle of templates and modules within the AetherOS ecosystem. It serves as the primary toolkit for the Collegium (AetherOS), enabling the analysis, controlled importation, and quality assurance of the wiki's structural components.

The tool was developed by Isidore Lands and Silas Corvus.

Purpose in Symbiotic Learning

The core purpose of Converti is to ensure the structural integrity and maneuverability of the wiki's knowledge base. A lean, well-documented, and minimally dependent codebase is essential for the symbiotic learning between users and their Wingman AIs.

By providing tools to analyze and gracefully import components, Converti prevents "dependency hell" and ensures the wiki does not become cluttered with the unmanaged complexity of its source wikis.

The Converti Toolkit

Converti is comprised of a single command-line interface (main.py) that provides several commands, each serving a specific function in the Collegium's review process.

Stage 1: Map Dependencies

The first step is to map the full dependency tree of a set of root templates from a source wiki (like Wikipedia) to a named JSON file.

map command: Scans a list of templates on a specified source wiki (--source-family) and recursively maps every sub-template and Lua module they depend on. The result is saved to a specified output file (--output).

Stage 2: Audit & Analyze

The second step is to analyze the generated dependency map to assess its technical debt.

audit command: Ingests a dependency map (--map-file) and generates a human-readable report (dependency_report.txt) and an interactive graph (dependency_graph.html). This command calculates a Wiki Maneuverability Score for each component based on its complexity, dependency count, and documentation quality, highlighting the most foundational and complex pages.

Stage 3: Deploy to Wiki

After the Collegium has reviewed the analysis and created a curated approved_list.txt, this command imports only the necessary components to the target wiki.

deploy command: Reads the approved list and a dependency map. It then resolves the full dependency tree and surgically imports only the required pages from the source wiki to the target (ooda.wiki), skipping any that already exist. A --dry-run flag allows for simulating the deployment without making any edits.

Future Development

refactor command: (Under Development) An assistant that uses an LLM to review low-scoring templates and suggest simplifications or alternative implementations.

Active Voice Assistant: An on-wiki tool to help editors convert passive voice to active voice, further improving the clarity and readability of the knowledge base.