semvec/pypi-packages huggingface dataset:
kuling 1.0.2
Move files around
Requires Python: >=3.10

# 💨 Kuling 💨

A simple, intuitive Python library for file operations with clean APIs and robust error handling.

## 🚀 Features

- **Glob Pattern Matching** 🔍 - Find files with support for `*`, `?`, `[abc]`, and `**` wildcards
- **Safe File Operations** 📁 - Move, copy, and delete files with automatic directory creation
- **Robust Error Handling** ⚠️ - Clear exceptions for all edge cases
- **Path Flexibility** 🛤️ - Works with both strings and Path objects
- **Type Safety** 🔒 - Full type hints for better IDE support

## 📦 Installation
```bash
pip install kuling
```

## 🔧 Quick Start
```python
from kuling import find_matching_paths, move_file, copy_file, delete_file

# Find all Python files recursively
python_files = find_matching_paths("/project/**/*.py")

# Move a file (creates parent directories automatically)
move_file("old/location/file.txt", "new/location/file.txt")

# Copy a file to a directory (keeps original name)
copy_file("important.txt", "backups/")

# Delete a file
delete_file("temp/unwanted.log")
```
## 🔧 Advanced Features

### Pattern Matching Examples
```python
# Question mark - single character
find_matching_paths("file?.txt")  # file1.txt, fileA.txt

# Character sets
find_matching_paths("test[123].py")  # test1.py, test2.py, test3.py
find_matching_paths("file[abc].txt")  # filea.txt, fileb.txt, filec.txt

# Negation
find_matching_paths("test[!1].py")  # test2.py, test3.py (not test1.py)

# Recursive search
find_matching_paths("**/*.py")  # All .py files in all subdirectories

# Combined wildcards
find_matching_paths("logs/*/2024/*.log")  # Logs in any subdirectory for 2024
```

### Path Flexibility
```python
from pathlib import Path

# All functions accept both strings and Path objects
source = Path("file.txt")
dest = "backup/"

copy_file(source, dest)  # Mixed types work fine
copy_file(str(source), str(dest))  # Strings work
copy_file(source, Path(dest))  # Path objects work
```

## 🔗 Links

- [Homepage](https://github.com/ebremstedt/kuling)
- [Issues](https://github.com/ebremstedt/kuling/issues)
- [PyPI](https://pypi.org/project/kuling/)
nonebot-plugin-whats-talk-qwen 0.0.2
分析群聊记录，生成近期讨论话题的总结。
Requires Python: <4.0,>=3.9
Keywords: nonebot, nonebot2, plugin

<div align="center">
  <a href="https://v2.nonebot.dev/store"><img src="https://github.com/A-kirami/nonebot-plugin-template/blob/resources/nbp_logo.png" width="180" height="180" alt="NoneBotPluginLogo"></a>
  <br>
  <p><img src="https://github.com/A-kirami/nonebot-plugin-template/blob/resources/NoneBotPlugin.svg" width="240" alt="NoneBotPluginText"></p>
</div>

<div align="center">

# nonebot-plugin-whats-talk-qwen

_✨ 分析群聊记录，生成近期讨论话题的总结。 ✨_


<a href="https://github.com/qianqiuzy/nonebot-plugin-whats-talk-qwen/stargazers">
        <img alt="GitHub stars" src="https://img.shields.io/github/stars/qianqiuzy/nonebot-plugin-whats-talk-qwen" alt="stars">
</a>
<a href="./LICENSE">
    <img src="https://img.shields.io/github/license/qianqiuzy/nonebot-plugin-whats-talk-qwen.svg" alt="license">
</a>
<a href="https://pypi.python.org/pypi/nonebot-plugin-whats-talk-qwen">
    <img src="https://img.shields.io/pypi/v/nonebot-plugin-whats-talk-qwen.svg" alt="pypi">
</a>
<img src="https://img.shields.io/badge/python-3.9+-blue.svg" alt="python">

</div>

## 📖 介绍

通过指令获取当前群聊近期讨论内容的总结，或者将群聊加入推送列表定时进行话题总结。

## 💿 安装

<details open>
<summary>使用 nb-cli 安装</summary>
在 nonebot2 项目的根目录下打开命令行, 输入以下指令即可安装

    nb plugin install nonebot-plugin-whats-talk-qwen

</details>

<details>
<summary>使用包管理器安装</summary>
在 nonebot2 项目的插件目录下, 打开命令行, 根据你使用的包管理器, 输入相应的安装命令

<details>
<summary>pip</summary>

    pip install nonebot-plugin-whats-talk-qwen
</details>
<details>
<summary>pdm</summary>

    pdm add nonebot-plugin-whats-talk-qwen
</details>
<details>
<summary>poetry</summary>

    poetry add nonebot-plugin-whats-talk-qwen
</details>
<details>
<summary>conda</summary>

    conda install nonebot-plugin-whats-talk-qwen
</details>

打开 nonebot2 项目根目录下的 `pyproject.toml` 文件, 在 `[tool.nonebot]` 部分追加写入

    plugins = ["nonebot_plugin_whats_talk_qwen"]

</details>

## ⚙️ 配置

在 nonebot2 项目的`.env`文件中添加下表中的必填配置

| 配置项 | 必填 | 默认值 | 说明 |
|:-----:|:----:|:----:|:----:|
| wt_ai_keys | 是 | 无 | [qwen API Key](https://bailian.console.aliyun.com/?tab=model#/model-market/detail/qwen3-max), 可填入多个key, 格式为`["xxx","xxx"]` |
| wt_model | 否 | "qwen3-max" | 总结使用的AI模型 |
| wt_proxy | 否 | 无 | 访问Gemini使用的代理，格式为`"http://<ip>:<port>"` |
| wt_history_lens | 否 | 1000 | 总结使用的群聊条数 |
| wt_push_cron | 否 | "0 14,22 * * *" | 定时推送的时间，只支持Cron表达式 |
| wt_group_list | 否 | 无 | 定时推送的群列表 |

## 🕹️ 使用
### 指令表
| 指令 | 权限 | 需要@ | 范围 | 说明 |
|:-----:|:----:|:----:|:----:|:----:|
| 他们在聊什么/群友在聊什么 | 群员 | 否 | 群聊 | 获取当前群聊的讨论总结 |

## 🎉 鸣谢
感谢[大橘](https://github.com/zhiyu1998)提供的prompt以及[插件灵感](https://github.com/zhiyu1998/rconsole-plugin-complementary-set/blob/master/whats-talk-gemini.js)。
感谢源项目[nonebot-plugin-whats-talk-gemini](https://github.com/hakunomiko/nonebot-plugin-whats-talk-gemini)