fiona-assistant 0.1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,17 @@
1
+ GNU GENERAL PUBLIC LICENSE
2
+ Version 3, 29 June 2007
3
+
4
+ Copyright (C) 2026 Fiona-Assistant Project
5
+
6
+ This program is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU General Public License as published by
8
+ the Free Software Foundation, either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ This program is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU General Public License for more details.
15
+
16
+ You should have received a copy of the GNU General Public License
17
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
@@ -0,0 +1,62 @@
1
+ Metadata-Version: 2.4
2
+ Name: fiona-assistant
3
+ Version: 0.1.0
4
+ Summary: Tools for managing the LLM wiki.
5
+ Author: LLM Wiki Team
6
+ License-Expression: GPL-3.0-only
7
+ Classifier: Programming Language :: Python :: 3
8
+ Classifier: Operating System :: OS Independent
9
+ Requires-Python: >=3.8
10
+ Description-Content-Type: text/markdown
11
+ License-File: LICENSE
12
+ Provides-Extra: dev
13
+ Requires-Dist: pytest>=7.0.0; extra == "dev"
14
+ Requires-Dist: pylint; extra == "dev"
15
+ Requires-Dist: build; extra == "dev"
16
+ Requires-Dist: twine; extra == "dev"
17
+ Dynamic: license-file
18
+
19
+ # Fiona-Assistant
20
+
21
+ Tools for managing the LLM wiki.
22
+
23
+ ## Development
24
+
25
+ ### Setup
26
+
27
+ 1. Create and activate the virtual environment:
28
+ ```bash
29
+ source bootstrap --env fiona_env -c
30
+ ```
31
+ > Make sure `fiona_env` is activated as pyenv before proceeding
32
+
33
+ ### Testing
34
+
35
+ Run tests with pytest:
36
+ ```bash
37
+ pytest
38
+ ```
39
+
40
+ ### Usage
41
+
42
+ Run the fiona-assistant CLI with subcommands:
43
+ ```bash
44
+ # Test command (via module)
45
+ python -m fiona test
46
+
47
+ # Or via entry point
48
+ fiona-assistant test
49
+
50
+ # List files with librarian
51
+ fiona-assistant librarian <directory>
52
+
53
+ # List files with mdoctor
54
+ fiona-assistant mdoctor <directory>
55
+ ```
56
+
57
+ > Note: Use `fiona-assistant <command>` or `python -m fiona <command>`
58
+
59
+ To see all available commands:
60
+ ```bash
61
+ fiona-assistant --help
62
+ ```
@@ -0,0 +1,44 @@
1
+ # Fiona-Assistant
2
+
3
+ Tools for managing the LLM wiki.
4
+
5
+ ## Development
6
+
7
+ ### Setup
8
+
9
+ 1. Create and activate the virtual environment:
10
+ ```bash
11
+ source bootstrap --env fiona_env -c
12
+ ```
13
+ > Make sure `fiona_env` is activated as pyenv before proceeding
14
+
15
+ ### Testing
16
+
17
+ Run tests with pytest:
18
+ ```bash
19
+ pytest
20
+ ```
21
+
22
+ ### Usage
23
+
24
+ Run the fiona-assistant CLI with subcommands:
25
+ ```bash
26
+ # Test command (via module)
27
+ python -m fiona test
28
+
29
+ # Or via entry point
30
+ fiona-assistant test
31
+
32
+ # List files with librarian
33
+ fiona-assistant librarian <directory>
34
+
35
+ # List files with mdoctor
36
+ fiona-assistant mdoctor <directory>
37
+ ```
38
+
39
+ > Note: Use `fiona-assistant <command>` or `python -m fiona <command>`
40
+
41
+ To see all available commands:
42
+ ```bash
43
+ fiona-assistant --help
44
+ ```
@@ -0,0 +1,41 @@
1
+ [build-system]
2
+ requires = ["setuptools>=42"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "fiona-assistant"
7
+ version = "0.1.0"
8
+ description = "Tools for managing the LLM wiki."
9
+ authors = [{name = "LLM Wiki Team"}]
10
+ readme = "README.md"
11
+ license = "GPL-3.0-only"
12
+ requires-python = ">=3.8"
13
+ classifiers = [
14
+ "Programming Language :: Python :: 3",
15
+ "Operating System :: OS Independent",
16
+ ]
17
+
18
+ # Core dependencies (required for runtime)
19
+ dependencies = []
20
+
21
+ # Optional dependencies groups
22
+ [project.optional-dependencies]
23
+ dev = [
24
+ "pytest>=7.0.0",
25
+ "pylint",
26
+ "build",
27
+ "twine",
28
+ ]
29
+
30
+ [tool.setuptools.packages.find]
31
+ where = ["src"]
32
+ include = ["fiona", "librarian", "mdoctor"]
33
+
34
+ [tool.pytest.ini_options]
35
+ testpaths = ["src/tests"]
36
+
37
+ # Define console scripts entry points
38
+ [project.scripts]
39
+ fiona-assistant = "fiona.__main__:main"
40
+ librarian = "librarian.librarian:main"
41
+ mdoctor = "mdoctor.mdoctor:main"
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1,55 @@
1
+ """Fiona-Assistant CLI entry point.
2
+
3
+ This module provides a command-line interface for the Fiona-Assistant package.
4
+ It delegates commands to the appropriate sub-tools (e.g., librarian, mdoctor).
5
+ """
6
+
7
+ import argparse
8
+ import sys
9
+ from librarian.librarian import main as librarian_main
10
+ from mdoctor.mdoctor import main as mdoctor_main
11
+
12
+
13
+ def main():
14
+ """Entry point for the Fiona-Assistant CLI."""
15
+ parser = argparse.ArgumentParser(
16
+ description="Fiona-Assistant - Tools for managing the LLM wiki."
17
+ )
18
+ subparsers = parser.add_subparsers(dest="command", help="Available commands")
19
+
20
+ # fiona-assistant test
21
+ subparsers.add_parser("test", help="Run test command")
22
+
23
+ # fiona-assistant librarian
24
+ librarian_parser = subparsers.add_parser("librarian", help="Manage LLM wiki content")
25
+ librarian_parser.add_argument(
26
+ "directory",
27
+ help="Directory to scan for files"
28
+ )
29
+
30
+ # fiona-assistant mdoctor
31
+ mdoctor_parser = subparsers.add_parser("mdoctor", help="Diagnose wiki content")
32
+ mdoctor_parser.add_argument(
33
+ "directory",
34
+ help="Directory to scan for files"
35
+ )
36
+
37
+ args = parser.parse_args()
38
+
39
+ if args.command is None:
40
+ print("Fiona-Assistant: Hello!")
41
+ elif args.command == "test":
42
+ print("Fiona-Assistant: test")
43
+ elif args.command == "librarian":
44
+ sys.argv = ["librarian", args.directory]
45
+ librarian_main()
46
+ elif args.command == "mdoctor":
47
+ sys.argv = ["mdoctor", args.directory]
48
+ mdoctor_main()
49
+ else:
50
+ parser.print_help()
51
+ sys.exit(1)
52
+
53
+
54
+ if __name__ == "__main__":
55
+ main()
@@ -0,0 +1,62 @@
1
+ Metadata-Version: 2.4
2
+ Name: fiona-assistant
3
+ Version: 0.1.0
4
+ Summary: Tools for managing the LLM wiki.
5
+ Author: LLM Wiki Team
6
+ License-Expression: GPL-3.0-only
7
+ Classifier: Programming Language :: Python :: 3
8
+ Classifier: Operating System :: OS Independent
9
+ Requires-Python: >=3.8
10
+ Description-Content-Type: text/markdown
11
+ License-File: LICENSE
12
+ Provides-Extra: dev
13
+ Requires-Dist: pytest>=7.0.0; extra == "dev"
14
+ Requires-Dist: pylint; extra == "dev"
15
+ Requires-Dist: build; extra == "dev"
16
+ Requires-Dist: twine; extra == "dev"
17
+ Dynamic: license-file
18
+
19
+ # Fiona-Assistant
20
+
21
+ Tools for managing the LLM wiki.
22
+
23
+ ## Development
24
+
25
+ ### Setup
26
+
27
+ 1. Create and activate the virtual environment:
28
+ ```bash
29
+ source bootstrap --env fiona_env -c
30
+ ```
31
+ > Make sure `fiona_env` is activated as pyenv before proceeding
32
+
33
+ ### Testing
34
+
35
+ Run tests with pytest:
36
+ ```bash
37
+ pytest
38
+ ```
39
+
40
+ ### Usage
41
+
42
+ Run the fiona-assistant CLI with subcommands:
43
+ ```bash
44
+ # Test command (via module)
45
+ python -m fiona test
46
+
47
+ # Or via entry point
48
+ fiona-assistant test
49
+
50
+ # List files with librarian
51
+ fiona-assistant librarian <directory>
52
+
53
+ # List files with mdoctor
54
+ fiona-assistant mdoctor <directory>
55
+ ```
56
+
57
+ > Note: Use `fiona-assistant <command>` or `python -m fiona <command>`
58
+
59
+ To see all available commands:
60
+ ```bash
61
+ fiona-assistant --help
62
+ ```
@@ -0,0 +1,14 @@
1
+ LICENSE
2
+ README.md
3
+ pyproject.toml
4
+ src/fiona/__main__.py
5
+ src/fiona_assistant.egg-info/PKG-INFO
6
+ src/fiona_assistant.egg-info/SOURCES.txt
7
+ src/fiona_assistant.egg-info/dependency_links.txt
8
+ src/fiona_assistant.egg-info/entry_points.txt
9
+ src/fiona_assistant.egg-info/requires.txt
10
+ src/fiona_assistant.egg-info/top_level.txt
11
+ src/librarian/__init__.py
12
+ src/librarian/librarian.py
13
+ src/mdoctor/__init__.py
14
+ src/mdoctor/mdoctor.py
@@ -0,0 +1,4 @@
1
+ [console_scripts]
2
+ fiona-assistant = fiona.__main__:main
3
+ librarian = librarian.librarian:main
4
+ mdoctor = mdoctor.mdoctor:main
@@ -0,0 +1,6 @@
1
+
2
+ [dev]
3
+ pytest>=7.0.0
4
+ pylint
5
+ build
6
+ twine
@@ -0,0 +1,3 @@
1
+ fiona
2
+ librarian
3
+ mdoctor
@@ -0,0 +1,5 @@
1
+ # Librarian package
2
+
3
+ from .librarian import Librarian, main
4
+
5
+ __all__ = ['Librarian', 'main']
@@ -0,0 +1,52 @@
1
+ """
2
+ Librarian - A tool for managing the LLM wiki content and operations.
3
+ """
4
+ import argparse
5
+ import os
6
+ import sys
7
+
8
+ class Librarian:
9
+ """Core class for managing wiki content and operations."""
10
+ def __init__(self) -> None:
11
+ pass
12
+
13
+ def list_all_files(self, directory: str) -> list[str]:
14
+ """
15
+ List all files in the given directory and its subdirectories.
16
+
17
+ Args:
18
+ directory: Path to the directory to scan
19
+
20
+ Returns:
21
+ List of absolute file paths for all files in the directory
22
+ """
23
+ file_list = []
24
+ for root, _, files in os.walk(directory):
25
+ for file in files:
26
+ file_list.append(os.path.join(root, file))
27
+ return file_list
28
+
29
+
30
+ def main():
31
+ """Command-line interface for the librarian."""
32
+ parser = argparse.ArgumentParser(
33
+ description="Librarian - A tool for managing the LLM wiki content and operations."
34
+ )
35
+ parser.add_argument(
36
+ "directory",
37
+ help="Directory to scan for files"
38
+ )
39
+ args = parser.parse_args()
40
+
41
+ if not os.path.isdir(args.directory):
42
+ print(f"Error: '{args.directory}' is not a valid directory.", file=sys.stderr)
43
+ sys.exit(1)
44
+
45
+ librarian = Librarian()
46
+ files = librarian.list_all_files(args.directory)
47
+ print(f"Found {len(files)} files in '{args.directory}':")
48
+ for file_path in files:
49
+ print(f" - {file_path}")
50
+
51
+ if __name__ == "__main__":
52
+ main()
@@ -0,0 +1,5 @@
1
+ # MDoctor package
2
+
3
+ from .mdoctor import MDoctor, main
4
+
5
+ __all__ = ['MDoctor', 'main']
@@ -0,0 +1,43 @@
1
+ """
2
+ MDoctor - A tool for diagnosing and managing the LLM wiki.
3
+ """
4
+ import argparse
5
+ import os
6
+ import sys
7
+
8
+ from librarian.librarian import Librarian
9
+
10
+ class MDoctor:
11
+ """Core class for diagnosing wiki content and operations."""
12
+ def __init__(self) -> None:
13
+ self.librarian = Librarian()
14
+
15
+
16
+ def list_all_files(self, directory: str):
17
+ """List all files in the given directory using the librarian."""
18
+ return self.librarian.list_all_files(directory)
19
+
20
+ def main():
21
+ """Command-line interface for the MDoctor tool."""
22
+ parser = argparse.ArgumentParser(
23
+ description="MDoctor - A tool for diagnosing and managing the LLM wiki."
24
+ )
25
+ parser.add_argument(
26
+ "directory",
27
+ help="Directory to scan for files"
28
+ )
29
+ args = parser.parse_args()
30
+
31
+ if not os.path.isdir(args.directory):
32
+ print(f"Error: '{args.directory}' is not a valid directory.", file=sys.stderr)
33
+ sys.exit(1)
34
+
35
+ mdoctor = MDoctor()
36
+ files = mdoctor.list_all_files(args.directory)
37
+ print(f"MDoctor: Found {len(files)} files in '{args.directory}':")
38
+ for file_path in files:
39
+ print(f" - {file_path}")
40
+
41
+
42
+ if __name__ == "__main__":
43
+ main()